The problem here is that you have made an incorrect assumption. In the older
OMPI versions, the -H option simply indicated that the specified hosts were
available for use - it did not imply the number of slots on that host. Since
you have specified 2 slots on each host, and you told mpirun to launch 2 procs
of your second app_context (the “slave”), it filled the first node with the 2
procs.