From 3bf3fa89ffaaae858c247ef06ce62ec6ecb93e45 Mon Sep 17 00:00:00 2001 From: Theofilos Manitaras Date: Tue, 2 Jul 2019 11:12:39 +0200 Subject: [PATCH] Adapt Haswell FMA check for CCE 9.0.x * Test also for PrgEnv-cray_classic. --- config/cscs.py | 20 +++++++++++++------- cscs-checks/compile/haswell_fma_check.py | 16 ++++++++++++---- 2 files changed, 25 insertions(+), 11 deletions(-) diff --git a/config/cscs.py b/config/cscs.py index 7da16e7cd0..f6d9476d39 100644 --- a/config/cscs.py +++ b/config/cscs.py @@ -132,8 +132,9 @@ class ReframeSettings: 'scheduler': 'local', 'modules': [], 'access': [], - 'environs': ['PrgEnv-cray', 'PrgEnv-gnu', - 'PrgEnv-intel', 'PrgEnv-pgi'], + 'environs': ['PrgEnv-cray', 'PrgEnv-cray_classic', + 'PrgEnv-gnu', 'PrgEnv-intel', + 'PrgEnv-pgi'], 'descr': 'Login nodes', 'max_jobs': 4 }, @@ -142,8 +143,8 @@ class ReframeSettings: 'scheduler': 'nativeslurm', 'modules': ['daint-gpu'], 'access': ['--constraint=gpu'], - 'environs': ['PrgEnv-cray', 'PrgEnv-gnu', - 'PrgEnv-intel'], + 'environs': ['PrgEnv-cray', 'PrgEnv-cray_classic', + 'PrgEnv-gnu', 'PrgEnv-intel'], 'descr': 'Hybrid nodes (Haswell/P100)', 'max_jobs': 100, 'resources': { @@ -155,8 +156,8 @@ class ReframeSettings: 'scheduler': 'nativeslurm', 'modules': ['daint-mc'], 'access': ['--constraint=mc'], - 'environs': ['PrgEnv-cray', 'PrgEnv-gnu', - 'PrgEnv-intel'], + 'environs': ['PrgEnv-cray', 'PrgEnv-cray_classic', + 'PrgEnv-gnu', 'PrgEnv-intel'], 'descr': 'Multicore nodes (Broadwell)', 'max_jobs': 100, 'resources': { @@ -203,7 +204,7 @@ class ReframeSettings: 'kesch': { 'descr': 'Kesch MCH', - 'hostnames': ['keschln-\d+'], + 'hostnames': [r'keschln-\d+'], 'modules_system': 'tmod', 'resourcesdir': '/apps/common/UES/reframe/resources', 'partitions': { @@ -444,6 +445,11 @@ class ReframeSettings: 'modules': ['PrgEnv-cray'], }, + 'PrgEnv-cray_classic': { + 'type': 'ProgEnvironment', + 'modules': ['PrgEnv-cray', 'cce/9.0.0-classic'], + }, + 'PrgEnv-gnu': { 'type': 'ProgEnvironment', 'modules': ['PrgEnv-gnu'], diff --git a/cscs-checks/compile/haswell_fma_check.py b/cscs-checks/compile/haswell_fma_check.py index 76b94a487c..2efe9f34e5 100644 --- a/cscs-checks/compile/haswell_fma_check.py +++ b/cscs-checks/compile/haswell_fma_check.py @@ -10,11 +10,15 @@ def __init__(self): self.descr = 'check for avx2 instructions' self.valid_systems = ['dom:login', 'daint:login', 'kesch:login'] if self.current_system.name == 'kesch': - self.valid_prog_environs = ['PrgEnv-cray', 'PrgEnv-gnu', - 'PrgEnv-cray-nompi', 'PrgEnv-gnu-nompi'] + self.valid_prog_environs = [ + 'PrgEnv-cray', 'PrgEnv-gnu', 'PrgEnv-cray-nompi', + 'PrgEnv-gnu-nompi' + ] else: - self.valid_prog_environs = ['PrgEnv-cray', 'PrgEnv-gnu', - 'PrgEnv-intel', 'PrgEnv-pgi'] + self.valid_prog_environs = [ + 'PrgEnv-cray', 'PrgEnv-cray_classic', 'PrgEnv-gnu', + 'PrgEnv-intel', 'PrgEnv-pgi' + ] self.modules = ['craype-haswell'] self.sourcesdir = 'src/haswell_fma' @@ -42,5 +46,9 @@ def setup(self, partition, environ, **job_opts): self.build_system.cflags += ['-march=native'] self.build_system.cxxflags += ['-march=native'] self.build_system.fflags += ['-march=native'] + else: + if environ.name == 'PrgEnv-cray': + self.build_system.cflags = ['-Ofast', '-S'] + self.build_system.cxxflags = ['-Ofast', '-S'] super().setup(partition, environ, **job_opts)