I am using the Hydra Process Manager from MPICH and I plan on running jobs on multiple compute nodes. Currently working with an Intel Xeon E5-2680v2 with a total of 20 cores with 2 sockets (32 GB of memory and 25 MB L3 cache for each socket). Socket 0 has hwthreads labeled 0-9 and Socket 1 with 10-19.

I see within hydra's documentation that you can specify the motherboard option "B". In the context of HPC does this equate to the compute node? That is, say if I wanted to run a job on 32 processes on 2 of these compute nodes:

mpiexec.hydra -n 32 -bind-to hwthread -map-by board ./myprogram

Would it divide or bind the processes equally among my two nodes? If not, do you know how I can achieve this?


migrated from cs.stackexchange.com May 3 '15 at 10:03


  • $\begingroup$ This does not seem to be a computer science question, but more about using specific hardware platforms with specific software. Migrating to Computational Science in the hope that this fits their scope and they have the expertise you need. $\endgroup$ – Raphael May 3 '15 at 10:03

You've asked two separate questions here. The second one is better addressed by the MPICH Support options or documentation. The answer to the title question is "yes (typically)".

I have seen designs or proposed designs where more than one node (think of independent Linux OSes with independent memories) is physically mounted on the same PCB board, but this isn't very common. Typically, for manufacturing and engineering reasons, each node is on a separate PCB board or motherboard.

  • $\begingroup$ Okay that's what I figured, thanks. I will probably figure out the answer to the second part one way or another $\endgroup$ – Justin May 4 '15 at 4:13

Your Answer

