diff --git a/ogscm/cli.py b/ogscm/cli.py index abee60f9d957019ba9471eba3c9a1d02f6e04ce4..b56dacc711b7f235564d71cc9f062947ea4129f8 100644 --- a/ogscm/cli.py +++ b/ogscm/cli.py @@ -16,6 +16,8 @@ import subprocess import sys import yaml +from packaging import version + import hpccm from hpccm import linux_distro from hpccm.building_blocks import packages, mlnx_ofed, knem, ucx, openmpi, \ @@ -198,12 +200,17 @@ def main(): # pragma: no cover ]) else: Stage0 += ucx(cuda=False) - Stage0 += pmix() Stage0 += slurm_pmi2(version='17.02.11') - mpicc = openmpi(cuda=False, + pmix_version = True + if version.parse(ompi) >= version.parse('4'): + Stage0 += pmix() + pmix_version = '/usr/local/pmix' + + mpicc = openmpi(version=ompi, + cuda=False, infiniband=False, pmi='/usr/local/slurm-pmi2', - pmix='/usr/local/pmix', + pmix=pmix_version, ucx='/usr/local/ucx') toolchain = mpicc.toolchain diff --git a/requirements.txt b/requirements.txt index b7e273a5f635c585ddeb8ac9e491dc23de057a40..568d4dd1ee3dadf45c4806adb9ce7eda8d30a71b 100644 --- a/requirements.txt +++ b/requirements.txt @@ -2,3 +2,4 @@ six hpccm requests pyyaml +packaging