In the OpenMPI codebase, each module has multiple variants. When calling mpirun
, you can select the modules from the Modular Component Architecture (MCA) that you would like to use. The options include...
- collective algorithms (coll): basic, tuned, inter, cuda, ml, sm, ...
- byte-transfer layer (btl): openib, tcp, ...
- point-to-point management layer (pml): cm, ob1, ...
- matching transport layer (mtl): mxm, psm, ...
You can specify your choice of MCA components like this:
mpirun --mca btl self,openib --mca pml ob1 -np $nProcs ./myprogram
My questions:
- If I leave some MCA parameters unspecified, what are the defaults?
- Is there a verbose mode that will print all of the MCA components that are being used? (I tried adding
-v
to mympirun
command, and it didn't print anything extra.)