Remove pmi from the fabric list.#7226
Remove pmi from the fabric list.#7226alalazo merged 12 commits intospack:developfrom SJTU-HPC:openmpi
Conversation
| default=None if _verbs_dir() is None else 'verbs', | ||
| description='List of fabrics that are enabled', | ||
| values=('psm', 'psm2', 'pmi', 'verbs', 'mxm'), | ||
| values=('psm', 'psm2', 'verbs', 'mxm'), |
There was a problem hiding this comment.
I checked the docs, and I think I was wrong putting pmi under fabrics. Thanks for fixing this.
|
Can you please fix |
|
Flake8 fixed. |
|
@lee218llnl @healther @adamjstewart This is fine with me to merge, but since |
|
@alalazo Could you wait 1 day before I confirming the version checking in |
|
@alalazo This PR intents to move I've tested OpenMPI versions 1.10.7 and 2.0.4 compiled against GCC and ICC. All work well with SLURM 's PMI mechanism in which jobs are launched via I think this PR is reday to merge. |
|
@alalazo Can you review one more time and make sure the latest PMI changes look good to you? |
alalazo
left a comment
There was a problem hiding this comment.
Just a comment on making the runtime error a conflict and a question on pmi.
| return '--without-slurm' | ||
| elif spec.satisfies('@1.5.4:') and '+pmi' not in spec: | ||
| raise SpackError( | ||
| "+pmi is required for openmpi(>=1.5.5) to work with SLURM.") |
There was a problem hiding this comment.
Can pmi be used without slurm? If so I think making it a variant is fine, otherwise we can just pass --with-pmi here and avoid the variant. In any case we can move this check above and make it a conflict:
conflicts('schedulers=slurm ~pmi', when='@1.5.4:', msg='+pmi is required for openmpi(>=1.5.5) to work with SLURM.')There was a problem hiding this comment.
It seems PMI hasn't been adopted in schedulers other than SLURM. So I replaced pmi checking with the conflict in my latest commit.
This commit intents to:
pmifrom thefabricslist since Process Manager Interface is not a fabric.--with-slurm --with-pmifor OpenMPI (>1.5.4) whenschedulers=slurmis specified.