From 682dce3893c64615f25af31156bc6220905f6558 Mon Sep 17 00:00:00 2001 From: Theofilos Manitaras Date: Wed, 21 Nov 2018 11:50:52 +0100 Subject: [PATCH] Set 'exclusive_access' to True for kesch tests --- cscs-checks/cuda/cuda_checks.py | 1 + cscs-checks/cuda/multi_gpu.py | 1 + cscs-checks/libraries/io/netcdf_compile_run.py | 1 + cscs-checks/libraries/math/scalapack_compile_run.py | 1 + cscs-checks/mch/automatic_arrays.py | 3 ++- cscs-checks/mch/check_ruby.py | 1 + cscs-checks/mch/collectives_halo.py | 1 + cscs-checks/mch/cuda_stress_test.py | 1 + cscs-checks/mch/g2g_meteoswiss_check.py | 1 + cscs-checks/mch/gpu_direct_acc.py | 3 ++- cscs-checks/mch/gpu_direct_cuda.py | 1 + cscs-checks/mch/openacc_cuda_mpi_cppstd.py | 3 ++- cscs-checks/microbenchmarks/gpu_burn/gpu_burn_test.py | 1 + cscs-checks/microbenchmarks/mpi/mpi_helloworld.py | 1 + cscs-checks/microbenchmarks/osu/flexible_a2a.py | 1 + cscs-checks/microbenchmarks/osu/osu_tests.py | 1 + cscs-checks/microbenchmarks/stream/stream.py | 1 + cscs-checks/prgenv/helloworld.py | 3 +++ cscs-checks/prgenv/openacc_checks.py | 1 + cscs-checks/system/slurm/slurm.py | 6 ++++++ cscs-checks/tools/io/cdo.py | 1 + cscs-checks/tools/io/nco.py | 1 + cscs-checks/tools/profiling_and_debugging/cuda_gdb.py | 1 + cscs-checks/tools/profiling_and_debugging/ddt.py | 3 +++ cscs-checks/tools/profiling_and_debugging/nvprof.py | 1 + 25 files changed, 37 insertions(+), 3 deletions(-) diff --git a/cscs-checks/cuda/cuda_checks.py b/cscs-checks/cuda/cuda_checks.py index 51404670d7..1059db3ba2 100644 --- a/cscs-checks/cuda/cuda_checks.py +++ b/cscs-checks/cuda/cuda_checks.py @@ -23,6 +23,7 @@ def __init__(self): self.num_gpus_per_node = 1 self.nvidia_sm = '60' if self.current_system.name == 'kesch': + self.exclusive_access = True self.nvidia_sm = '37' self.maintainers = ['AJ', 'VK'] diff --git a/cscs-checks/cuda/multi_gpu.py b/cscs-checks/cuda/multi_gpu.py index f47579e1bc..60e896d730 100644 --- a/cscs-checks/cuda/multi_gpu.py +++ b/cscs-checks/cuda/multi_gpu.py @@ -12,6 +12,7 @@ def __init__(self): self.valid_systems = ['kesch:cn', 'daint:gpu', 'dom:gpu'] self.valid_prog_environs = ['PrgEnv-cray', 'PrgEnv-gnu'] if self.current_system.name == 'kesch': + self.exclusive_access = True self.valid_prog_environs += ['PrgEnv-cray-nompi', 'PrgEnv-gnu-nompi'] diff --git a/cscs-checks/libraries/io/netcdf_compile_run.py b/cscs-checks/libraries/io/netcdf_compile_run.py index 68e0e8e7a9..dec444fa72 100644 --- a/cscs-checks/libraries/io/netcdf_compile_run.py +++ b/cscs-checks/libraries/io/netcdf_compile_run.py @@ -25,6 +25,7 @@ def __init__(self, lang, linkage): 'PrgEnv-intel', 'PrgEnv-pgi'] self.modules = ['cray-netcdf'] elif self.current_system.name == 'kesch': + self.exclusive_access = True if linkage == 'dynamic': self.valid_prog_environs = ['PrgEnv-pgi-nompi'] diff --git a/cscs-checks/libraries/math/scalapack_compile_run.py b/cscs-checks/libraries/math/scalapack_compile_run.py index 5a69623b84..9a9bfbe886 100644 --- a/cscs-checks/libraries/math/scalapack_compile_run.py +++ b/cscs-checks/libraries/math/scalapack_compile_run.py @@ -18,6 +18,7 @@ def __init__(self, linkage): self.variables = {'CRAYPE_LINK_TYPE': linkage} if self.current_system.name == 'kesch': + self.exclusive_access = True self.valid_prog_environs = ['PrgEnv-cray'] if linkage == 'static': # Static linkage not supported on Kesch diff --git a/cscs-checks/mch/automatic_arrays.py b/cscs-checks/mch/automatic_arrays.py index b89fd1806a..5a39754ae9 100644 --- a/cscs-checks/mch/automatic_arrays.py +++ b/cscs-checks/mch/automatic_arrays.py @@ -11,7 +11,8 @@ def __init__(self): 'PrgEnv-gnu'] if self.current_system.name in ['daint', 'dom']: self.modules = ['craype-accel-nvidia60'] - elif self.current_system.name in ['kesch']: + elif self.current_system.name == 'kesch': + self.exclusive_access = True self.modules = ['craype-accel-nvidia35'] self.variables = {'MV2_USE_CUDA': '1'} diff --git a/cscs-checks/mch/check_ruby.py b/cscs-checks/mch/check_ruby.py index 1eba17e16d..6025cd2131 100644 --- a/cscs-checks/mch/check_ruby.py +++ b/cscs-checks/mch/check_ruby.py @@ -9,6 +9,7 @@ def __init__(self): self.descr = ('Check NArray for Ruby version 2.2.2') self.valid_systems = ['kesch:cn'] self.valid_prog_environs = ['PrgEnv-gnu-nompi'] + self.exclusive_access = True self.modules = ['ruby/2.2.2-gmvolf-17.02'] self.executable = 'ruby' self.executable_opts = ['NArray.rb'] diff --git a/cscs-checks/mch/collectives_halo.py b/cscs-checks/mch/collectives_halo.py index cdb3e089c5..c49af57b90 100644 --- a/cscs-checks/mch/collectives_halo.py +++ b/cscs-checks/mch/collectives_halo.py @@ -18,6 +18,7 @@ def __init__(self, variant, bench_reference): '-DENABLE_MPI_TIMER=ON'] if self.current_system.name == 'kesch': + self.exclusive_access = True self.num_tasks = 144 self.num_gpus_per_node = 16 self.num_tasks_per_node = 16 diff --git a/cscs-checks/mch/cuda_stress_test.py b/cscs-checks/mch/cuda_stress_test.py index 69c074819e..f5a1ce80cf 100644 --- a/cscs-checks/mch/cuda_stress_test.py +++ b/cscs-checks/mch/cuda_stress_test.py @@ -9,6 +9,7 @@ def __init__(self): self.descr = 'MCH CUDA stress test' self.valid_systems = ['daint:gpu', 'dom:gpu', 'kesch:cn'] if self.current_system.name == 'kesch': + self.exclusive_access = True self.valid_prog_environs = ['PrgEnv-gnu-nompi'] self.modules = ['craype-accel-nvidia35'] else: diff --git a/cscs-checks/mch/g2g_meteoswiss_check.py b/cscs-checks/mch/g2g_meteoswiss_check.py index ce2afa3c54..4bfd1da790 100644 --- a/cscs-checks/mch/g2g_meteoswiss_check.py +++ b/cscs-checks/mch/g2g_meteoswiss_check.py @@ -10,6 +10,7 @@ def __init__(self, g2g): self.strict_check = False self.valid_systems = ['kesch:cn'] self.valid_prog_environs = ['PrgEnv-gnu'] + self.exclusive_access = True self.modules = ['cmake', 'craype-accel-nvidia35'] self.pre_run = ["export EXECUTABLE=$(ls src/ | " "grep 'GNU.*MVAPICH.*CUDA.*kesch.*')"] diff --git a/cscs-checks/mch/gpu_direct_acc.py b/cscs-checks/mch/gpu_direct_acc.py index 94635541b9..32f36f0d07 100644 --- a/cscs-checks/mch/gpu_direct_acc.py +++ b/cscs-checks/mch/gpu_direct_acc.py @@ -16,7 +16,8 @@ def __init__(self): self.num_tasks = 2 self.num_gpus_per_node = 1 self.num_tasks_per_node = 1 - elif self.current_system.name in ['kesch']: + elif self.current_system.name == 'kesch': + self.exclusive_access = True self.modules = ['craype-accel-nvidia35'] self.variables = { 'MV2_USE_CUDA': '1', diff --git a/cscs-checks/mch/gpu_direct_cuda.py b/cscs-checks/mch/gpu_direct_cuda.py index 140709251f..af0a472c79 100644 --- a/cscs-checks/mch/gpu_direct_cuda.py +++ b/cscs-checks/mch/gpu_direct_cuda.py @@ -18,6 +18,7 @@ def __init__(self): self.variables = {'MPICH_RDMA_ENABLED_CUDA': '1'} self.build_system.cxxflags = ['-ccbin CC', '-arch=sm_60'] elif self.current_system.name == 'kesch': + self.exclusive_access = True self.valid_prog_environs = ['PrgEnv-gnu'] self.modules = ['craype-accel-nvidia35'] self.variables = { diff --git a/cscs-checks/mch/openacc_cuda_mpi_cppstd.py b/cscs-checks/mch/openacc_cuda_mpi_cppstd.py index d24efecf14..7a904fdfb8 100644 --- a/cscs-checks/mch/openacc_cuda_mpi_cppstd.py +++ b/cscs-checks/mch/openacc_cuda_mpi_cppstd.py @@ -23,7 +23,8 @@ def __init__(self, withmpi): self.num_tasks_per_node = 12 self.num_gpus_per_node = 1 self.build_system.options = ['NVCC_FLAGS="-arch=compute_60"'] - elif self.current_system.name in ['kesch']: + elif self.current_system.name == 'kesch': + self.exclusive_access = True self.modules = ['craype-accel-nvidia35'] self.variables = { 'MV2_USE_CUDA': '1', diff --git a/cscs-checks/microbenchmarks/gpu_burn/gpu_burn_test.py b/cscs-checks/microbenchmarks/gpu_burn/gpu_burn_test.py index f739ce1fad..2f304d4449 100644 --- a/cscs-checks/microbenchmarks/gpu_burn/gpu_burn_test.py +++ b/cscs-checks/microbenchmarks/gpu_burn/gpu_burn_test.py @@ -13,6 +13,7 @@ def __init__(self): self.valid_prog_environs = ['PrgEnv-gnu'] if self.current_system.name == 'kesch': + self.exclusive_access = True self.modules = ['craype-accel-nvidia35'] # NOTE: The first option indicates the precision (-d for double) # while the seconds is the time (in secs) to run the test. diff --git a/cscs-checks/microbenchmarks/mpi/mpi_helloworld.py b/cscs-checks/microbenchmarks/mpi/mpi_helloworld.py index 40c1d2b013..0bc6bee912 100644 --- a/cscs-checks/microbenchmarks/mpi/mpi_helloworld.py +++ b/cscs-checks/microbenchmarks/mpi/mpi_helloworld.py @@ -15,6 +15,7 @@ def __init__(self, **kwargs): self.valid_prog_environs = ['PrgEnv-cray', 'PrgEnv-gnu', 'PrgEnv-intel', 'PrgEnv-pgi'] if self.current_system.name == 'kesch': + self.exclusive_access = True self.valid_prog_environs = ['PrgEnv-cray', 'PrgEnv-gnu', 'PrgEnv-intel'] diff --git a/cscs-checks/microbenchmarks/osu/flexible_a2a.py b/cscs-checks/microbenchmarks/osu/flexible_a2a.py index ef1b914f58..c6b340e17d 100644 --- a/cscs-checks/microbenchmarks/osu/flexible_a2a.py +++ b/cscs-checks/microbenchmarks/osu/flexible_a2a.py @@ -12,6 +12,7 @@ def __init__(self): self.valid_prog_environs = ['PrgEnv-cray', 'PrgEnv-gnu', 'PrgEnv-intel', 'PrgEnv-pgi'] if self.current_system.name == 'kesch': + self.exclusive_access = True self.valid_prog_environs = ['PrgEnv-cray', 'PrgEnv-gnu', 'PrgEnv-intel'] diff --git a/cscs-checks/microbenchmarks/osu/osu_tests.py b/cscs-checks/microbenchmarks/osu/osu_tests.py index 0611e3fa8d..0c84c53a47 100644 --- a/cscs-checks/microbenchmarks/osu/osu_tests.py +++ b/cscs-checks/microbenchmarks/osu/osu_tests.py @@ -85,6 +85,7 @@ def __init__(self): self.build_system = 'Make' self.build_system.makefile = 'Makefile_p2p' if self.current_system.name == 'kesch': + self.exclusive_access = True self.valid_prog_environs = ['PrgEnv-cray', 'PrgEnv-gnu'] else: self.valid_prog_environs = ['PrgEnv-cray', 'PrgEnv-gnu', diff --git a/cscs-checks/microbenchmarks/stream/stream.py b/cscs-checks/microbenchmarks/stream/stream.py index 48ef9a41c7..2089ecf9b3 100644 --- a/cscs-checks/microbenchmarks/stream/stream.py +++ b/cscs-checks/microbenchmarks/stream/stream.py @@ -15,6 +15,7 @@ def __init__(self): self.valid_prog_environs = ['PrgEnv-cray', 'PrgEnv-gnu', 'PrgEnv-intel', 'PrgEnv-pgi'] if self.current_system.name == 'kesch': + self.exclusive_access = True self.valid_prog_environs += ['PrgEnv-cray-nompi', 'PrgEnv-gnu-nompi', 'PrgEnv-pgi-nompi'] diff --git a/cscs-checks/prgenv/helloworld.py b/cscs-checks/prgenv/helloworld.py index a4571a58ab..f1d2cd1692 100644 --- a/cscs-checks/prgenv/helloworld.py +++ b/cscs-checks/prgenv/helloworld.py @@ -26,6 +26,9 @@ def __init__(self, variant, lang, linkage): self.valid_prog_environs = ['PrgEnv-cray', 'PrgEnv-gnu', 'PrgEnv-intel', 'PrgEnv-pgi'] + if self.current_system.name == 'kesch': + self.exclusive_access = True + # Removing static compilation from kesch if (self.current_system.name in ['kesch', 'leone'] and linkage == 'static'): diff --git a/cscs-checks/prgenv/openacc_checks.py b/cscs-checks/prgenv/openacc_checks.py index a3cefe0d9a..006eef9f95 100644 --- a/cscs-checks/prgenv/openacc_checks.py +++ b/cscs-checks/prgenv/openacc_checks.py @@ -25,6 +25,7 @@ def __init__(self, variant): if self.current_system.name in ['daint', 'dom']: self.modules = ['craype-accel-nvidia60'] elif self.current_system.name == 'kesch': + self.exclusive_access = True self.modules = ['craype-accel-nvidia35'] self.variables = {'MV2_USE_CUDA': '1'} diff --git a/cscs-checks/system/slurm/slurm.py b/cscs-checks/system/slurm/slurm.py index 4e6601846e..c53d2c1b24 100644 --- a/cscs-checks/system/slurm/slurm.py +++ b/cscs-checks/system/slurm/slurm.py @@ -12,6 +12,9 @@ def __init__(self): self.valid_prog_environs = ['PrgEnv-cray'] self.tags = {'slurm', 'maintenance', 'ops', 'production'} self.num_tasks_per_node = 1 + if self.current_system.name == 'kesch': + self.exclusive_access = True + self.maintainers = ['RS', 'VK'] def setup(self, *args, **kwargs): @@ -32,6 +35,9 @@ def __init__(self): self.valid_prog_environs = ['PrgEnv-cray'] self.tags = {'slurm', 'maintenance', 'ops', 'production'} self.num_tasks_per_node = 1 + if self.current_system.name == 'kesch': + self.exclusive_access = True + self.maintainers = ['RS', 'VK'] def setup(self, *args, **kwargs): diff --git a/cscs-checks/tools/io/cdo.py b/cscs-checks/tools/io/cdo.py index 2546dc867c..3f0f07e32d 100644 --- a/cscs-checks/tools/io/cdo.py +++ b/cscs-checks/tools/io/cdo.py @@ -32,6 +32,7 @@ def __init__(self): self.valid_systems = ['daint:gpu', 'daint:mc', 'dom:gpu', 'dom:mc', 'kesch:pn', 'kesch:cn'] if self.current_system.name == 'kesch': + self.exclusive_access = True self.valid_prog_environs = ['PrgEnv-gnu-nompi'] self.modules = ['cdo'] else: diff --git a/cscs-checks/tools/io/nco.py b/cscs-checks/tools/io/nco.py index 2986d33dd4..f562eb538f 100644 --- a/cscs-checks/tools/io/nco.py +++ b/cscs-checks/tools/io/nco.py @@ -25,6 +25,7 @@ def __init__(self): self.valid_systems = ['daint:gpu', 'daint:mc', 'dom:gpu', 'dom:mc', 'kesch:pn', 'kesch:cn'] if self.current_system.name == 'kesch': + self.exclusive_access = True self.valid_prog_environs = ['PrgEnv-gnu-nompi'] self.modules = ['nco'] else: diff --git a/cscs-checks/tools/profiling_and_debugging/cuda_gdb.py b/cscs-checks/tools/profiling_and_debugging/cuda_gdb.py index 59a66fbeeb..fdff4c0986 100644 --- a/cscs-checks/tools/profiling_and_debugging/cuda_gdb.py +++ b/cscs-checks/tools/profiling_and_debugging/cuda_gdb.py @@ -16,6 +16,7 @@ def __init__(self): self.sourcesdir = 'src/Cuda' self.executable = 'cuda-gdb cuda_gdb_check' if self.current_system.name == 'kesch': + self.exclusive_access = True self.modules = ['craype-accel-nvidia35'] else: self.modules = ['craype-accel-nvidia60'] diff --git a/cscs-checks/tools/profiling_and_debugging/ddt.py b/cscs-checks/tools/profiling_and_debugging/ddt.py index 8b50482d57..d19395e16b 100644 --- a/cscs-checks/tools/profiling_and_debugging/ddt.py +++ b/cscs-checks/tools/profiling_and_debugging/ddt.py @@ -28,6 +28,9 @@ def __init__(self, lang, extension): # 'PrgEnv-intel': ' -O2 -qopenmp', # 'PrgEnv-pgi': ' -O2 -mp' } + if self.current_system.name == 'kesch': + self.exclusive_access = True + self.num_tasks = 1 self.num_tasks_per_node = 1 self.num_cpus_per_task = 4 diff --git a/cscs-checks/tools/profiling_and_debugging/nvprof.py b/cscs-checks/tools/profiling_and_debugging/nvprof.py index 792b5f8c44..412e56507e 100644 --- a/cscs-checks/tools/profiling_and_debugging/nvprof.py +++ b/cscs-checks/tools/profiling_and_debugging/nvprof.py @@ -35,6 +35,7 @@ def __init__(self): # FIXME temporary workaround # the programming environment should be adapted / fixed if self.current_system.name == 'kesch': + self.exclusive_access = True self.modules = ['craype-accel-nvidia35'] self.build_system.ldflags += ['-lcudart', '-lm'] else: