Commit e2e2cbf3 authored by Lorenz Huedepohl's avatar Lorenz Huedepohl
Browse files

Filter some PGI/IMPI combinations

parent a5b05885
Pipeline #67028 passed with stage
in 15 seconds
...@@ -29,6 +29,14 @@ mpi_parallel_studio = {value["impi"]: dict({"ps": key}, **value) for key, value ...@@ -29,6 +29,14 @@ mpi_parallel_studio = {value["impi"]: dict({"ps": key}, **value) for key, value
compiler_parallel_studio = {value["compiler"]: dict({"ps": key}, **value) for key, value in intel_parallel_studio.items()} compiler_parallel_studio = {value["compiler"]: dict({"ps": key}, **value) for key, value in intel_parallel_studio.items()}
def valid_pgi_mpi(pgi, mpi):
if "impi" not in mpi:
return False
if "2017" in mpi:
return False
return True
def valid_mpi(compiler, mpi): def valid_mpi(compiler, mpi):
""" """
It might be possible to use Intel MPI libararies and compilers from It might be possible to use Intel MPI libararies and compilers from
...@@ -40,6 +48,8 @@ def valid_mpi(compiler, mpi): ...@@ -40,6 +48,8 @@ def valid_mpi(compiler, mpi):
""" """
if compiler.startswith("intel") and mpi.startswith("impi"): if compiler.startswith("intel") and mpi.startswith("impi"):
return mpi == compiler_parallel_studio[compiler]["impi"] return mpi == compiler_parallel_studio[compiler]["impi"]
if compiler.startswith("pgi"):
return valid_pgi_mpi(compiler, mpi)
else: else:
return True return True
...@@ -291,7 +301,7 @@ def mpcdf_enable_repositories(api_url, project, package, verbose=False, filter_r ...@@ -291,7 +301,7 @@ def mpcdf_enable_repositories(api_url, project, package, verbose=False, filter_r
if flag == "cuda_mpi": if flag == "cuda_mpi":
for cuda, mpi, compiler in product(actual_cudas(), actual_mpis(), all_compilers): for cuda, mpi, compiler in product(actual_cudas(), actual_mpis(), all_compilers):
if valid_cuda(cuda, compiler) and valid_mpi(compiler, mpi): if valid_cuda(cuda, compiler) and valid_mpi(compiler, mpi):
enable(cuda + "_" + mpi + "_" + compiler) enable(cuda + "_" + mpi + "_" + compiler)
if flag == "pgi": if flag == "pgi":
for pgi in actual_pgis(): for pgi in actual_pgis():
...@@ -299,7 +309,8 @@ def mpcdf_enable_repositories(api_url, project, package, verbose=False, filter_r ...@@ -299,7 +309,8 @@ def mpcdf_enable_repositories(api_url, project, package, verbose=False, filter_r
if flag == "pgi_mpi": if flag == "pgi_mpi":
for mpi, pgi in product(actual_mpis(), actual_pgis()): for mpi, pgi in product(actual_mpis(), actual_pgis()):
enable(mpi + "_" + pgi) if valid_pgi_mpi(pgi, mpi):
enable(mpi + "_" + pgi)
if len(build.getchildren()) > 0: if len(build.getchildren()) > 0:
build.getchildren()[-1].tail = "\n " build.getchildren()[-1].tail = "\n "
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment