Package slate: Improved MPI launcher search for smoke tests (#35448)
* Improved MPI launcher search for smoke tests * Improving mpi launcher search * Removing redundant logic
This commit is contained in:
parent
cb4c60c709
commit
27ee08f5bb
@ -114,6 +114,15 @@ def cache_test_sources(self):
|
||||
install test subdirectory for use during `spack test run`."""
|
||||
self.cache_extra_test_sources(["examples"])
|
||||
|
||||
def mpi_launcher(self):
|
||||
searchpath = [self.spec["mpi"].prefix.bin]
|
||||
try:
|
||||
searchpath.insert(0, self.spec["slurm"].prefix.bin)
|
||||
except KeyError:
|
||||
print("Slurm not found, ignoring.")
|
||||
commands = ["srun", "mpirun", "mpiexec"]
|
||||
return which(*commands, path=searchpath) or which(*commands)
|
||||
|
||||
def test(self):
|
||||
if self.spec.satisfies("@2020.10.00") or "+mpi" not in self.spec:
|
||||
print("Skipping: stand-alone tests")
|
||||
@ -129,7 +138,8 @@ def test(self):
|
||||
self.run_test(cmake_bin, ["-DCMAKE_PREFIX_PATH=" + prefixes, ".."])
|
||||
make()
|
||||
test_args = ["-n", "4", "./ex05_blas"]
|
||||
mpi_path = self.spec["mpi"].prefix.bin
|
||||
mpiexe_f = which("srun", "mpirun", "mpiexec", path=mpi_path)
|
||||
self.run_test(mpiexe_f.command, test_args, purpose="SLATE smoke test")
|
||||
launcher = self.mpi_launcher()
|
||||
if not launcher:
|
||||
raise RuntimeError("Cannot run tests due to absence of MPI launcher")
|
||||
self.run_test(launcher.command, test_args, purpose="SLATE smoke test")
|
||||
make("clean")
|
||||
|
Loading…
Reference in New Issue
Block a user