Skip to content

Commit ddecc3f

Browse files
author
Vasileios Karakasis
authored
Merge pull request #1829 from lucamar/namd-pilatus
[test] Update checks of supported applications on Pilatus
2 parents bb71c5e + aee2765 commit ddecc3f

File tree

5 files changed

+64
-29
lines changed

5 files changed

+64
-29
lines changed

cscs-checks/apps/cp2k/cp2k_check.py

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,11 @@
99

1010
class Cp2kCheck(rfm.RunOnlyRegressionTest):
1111
def __init__(self):
12-
self.valid_prog_environs = ['builtin']
12+
if self.current_system.name == 'pilatus':
13+
self.valid_prog_environs = ['cpeGNU']
14+
else:
15+
self.valid_prog_environs = ['builtin']
16+
1317
self.modules = ['CP2K']
1418
self.executable = 'cp2k.psmp'
1519
self.executable_opts = ['H2O-256.inp']
@@ -51,13 +55,13 @@ class Cp2kCpuCheck(Cp2kCheck):
5155
def __init__(self, scale, variant):
5256
super().__init__()
5357
self.descr = 'CP2K CPU check (version: %s, %s)' % (scale, variant)
54-
self.valid_systems = ['daint:mc', 'eiger:mc']
58+
self.valid_systems = ['daint:mc', 'eiger:mc', 'pilatus:mc']
5559
if scale == 'small':
5660
self.valid_systems += ['dom:mc']
5761
if self.current_system.name in ['daint', 'dom']:
5862
self.num_tasks = 216
5963
self.num_tasks_per_node = 36
60-
elif self.current_system.name == 'eiger':
64+
elif self.current_system.name in ['eiger', 'pilatus']:
6165
self.num_tasks = 96
6266
self.num_tasks_per_node = 16
6367
self.num_cpus_per_task = 16
@@ -74,7 +78,7 @@ def __init__(self, scale, variant):
7478
if self.current_system.name in ['daint', 'dom']:
7579
self.num_tasks = 576
7680
self.num_tasks_per_node = 36
77-
elif self.current_system.name in ['eiger']:
81+
elif self.current_system.name in ['eiger', 'pilatus']:
7882
self.num_tasks = 256
7983
self.num_tasks_per_node = 16
8084
self.num_cpus_per_task = 16
@@ -92,22 +96,26 @@ def __init__(self, scale, variant):
9296
'small': {
9397
'dom:mc': {'time': (202.2, None, 0.05, 's')},
9498
'daint:mc': {'time': (180.9, None, 0.08, 's')},
95-
'eiger:mc': {'time': (70.0, None, 0.08, 's')}
99+
'eiger:mc': {'time': (70.0, None, 0.08, 's')},
100+
'pilatus:mc': {'time': (70.0, None, 0.08, 's')}
96101
},
97102
'large': {
98103
'daint:mc': {'time': (141.0, None, 0.05, 's')},
99-
'eiger:mc': {'time': (46.0, None, 0.05, 's')}
104+
'eiger:mc': {'time': (46.0, None, 0.05, 's')},
105+
'pilatus:mc': {'time': (46.0, None, 0.05, 's')}
100106
}
101107
},
102108
'prod': {
103109
'small': {
104110
'dom:mc': {'time': (202.2, None, 0.05, 's')},
105111
'daint:mc': {'time': (180.9, None, 0.08, 's')},
106-
'eiger:mc': {'time': (70.0, None, 0.08, 's')}
112+
'eiger:mc': {'time': (70.0, None, 0.08, 's')},
113+
'pilatus:mc': {'time': (70.0, None, 0.08, 's')}
107114
},
108115
'large': {
109116
'daint:mc': {'time': (113.0, None, 0.05, 's')},
110-
'eiger:mc': {'time': (46.0, None, 0.05, 's')}
117+
'eiger:mc': {'time': (46.0, None, 0.05, 's')},
118+
'pilatus:mc': {'time': (46.0, None, 0.05, 's')}
111119
}
112120
}
113121
}

cscs-checks/apps/gromacs/gromacs_check.py

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,11 @@
1212

1313
class GromacsBaseCheck(rfm.RunOnlyRegressionTest):
1414
def __init__(self, output_file):
15-
self.valid_prog_environs = ['builtin']
15+
if self.current_system.name == 'pilatus':
16+
self.valid_prog_environs = ['cpeGNU']
17+
else:
18+
self.valid_prog_environs = ['builtin']
19+
1620
self.executable = 'gmx_mpi'
1721

1822
# Reset sources dir relative to the SCS apps prefix
@@ -99,7 +103,7 @@ def __init__(self, scale, variant):
99103
class GromacsCPUCheck(GromacsBaseCheck):
100104
def __init__(self, scale, variant):
101105
super().__init__('md.log')
102-
self.valid_systems = ['daint:mc', 'eiger:mc']
106+
self.valid_systems = ['daint:mc', 'eiger:mc', 'pilatus:mc']
103107
self.descr = 'GROMACS CPU check'
104108
self.executable_opts = ['mdrun', '-dlb yes', '-ntomp 1', '-npme -1',
105109
'-nb cpu', '-s herflat.tpr']
@@ -109,14 +113,14 @@ def __init__(self, scale, variant):
109113
if (self.current_system.name in ['daint', 'dom']):
110114
self.num_tasks = 216
111115
self.num_tasks_per_node = 36
112-
elif (self.current_system.name in ['eiger']):
116+
elif (self.current_system.name in ['eiger', 'pilatus']):
113117
self.num_tasks = 768
114118
self.num_tasks_per_node = 128
115119
else:
116120
if (self.current_system.name in ['daint', 'dom']):
117121
self.num_tasks = 576
118122
self.num_tasks_per_node = 36
119-
elif (self.current_system.name in ['eiger']):
123+
elif (self.current_system.name in ['eiger', 'pilatus']):
120124
self.num_tasks = 2048
121125
self.num_tasks_per_node = 128
122126

@@ -125,11 +129,13 @@ def __init__(self, scale, variant):
125129
'small': {
126130
'dom:mc': {'perf': (40.0, -0.05, None, 'ns/day')},
127131
'daint:mc': {'perf': (38.8, -0.10, None, 'ns/day')},
128-
'eiger:mc': {'perf': (103.00, -0.10, None, 'ns/day')}
132+
'eiger:mc': {'perf': (103.00, -0.10, None, 'ns/day')},
133+
'pilatus:mc': {'perf': (103.00, -0.10, None, 'ns/day')}
129134
},
130135
'large': {
131136
'daint:mc': {'perf': (68.0, -0.20, None, 'ns/day')},
132-
'eiger:mc': {'perf': (146.00, -0.20, None, 'ns/day')}
137+
'eiger:mc': {'perf': (146.00, -0.20, None, 'ns/day')},
138+
'pilatus:mc': {'perf': (146.00, -0.20, None, 'ns/day')}
133139
}
134140
},
135141
}

cscs-checks/apps/lammps/lammps_check.py

Lines changed: 16 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,10 @@
1111

1212
class LAMMPSBaseCheck(rfm.RunOnlyRegressionTest):
1313
def __init__(self):
14-
self.valid_prog_environs = ['builtin']
14+
if self.current_system.name == 'pilatus':
15+
self.valid_prog_environs = ['cpeGNU']
16+
else:
17+
self.valid_prog_environs = ['builtin']
1518
self.modules = ['LAMMPS']
1619

1720
# Reset sources dir relative to the SCS apps prefix
@@ -92,9 +95,14 @@ def __init__(self, scale, variant):
9295
class LAMMPSCPUCheck(LAMMPSBaseCheck):
9396
def __init__(self, scale, variant):
9497
super().__init__()
95-
self.valid_systems = ['daint:mc', 'eiger:mc']
96-
self.executable = 'lmp_omp'
97-
self.executable_opts = ['-sf omp', '-pk omp 1', '-in in.lj.cpu']
98+
self.valid_systems = ['daint:mc', 'eiger:mc', 'pilatus:mc']
99+
if self.current_system.name in ['eiger', 'pilatus']:
100+
self.executable = 'lmp_mpi'
101+
self.executable_opts = ['-in in.lj.cpu']
102+
else:
103+
self.executable = 'lmp_omp'
104+
self.executable_opts = ['-sf omp', '-pk omp 1', '-in in.lj.cpu']
105+
98106
self.scale = scale
99107
if scale == 'small':
100108
self.valid_systems += ['dom:mc']
@@ -113,11 +121,13 @@ def __init__(self, scale, variant):
113121
'small': {
114122
'dom:mc': {'perf': (4394, -0.05, None, 'timesteps/s')},
115123
'daint:mc': {'perf': (3824, -0.10, None, 'timesteps/s')},
116-
'eiger:mc': {'perf': (5300, -0.05, None, 'timesteps/s')}
124+
'eiger:mc': {'perf': (4500, -0.10, None, 'timesteps/s')},
125+
'pilatus:mc': {'perf': (5000, -0.10, None, 'timesteps/s')}
117126
},
118127
'large': {
119128
'daint:mc': {'perf': (5310, -0.65, None, 'timesteps/s')},
120-
'eiger:mc': {'perf': (7100, -0.05, None, 'timesteps/s')}
129+
'eiger:mc': {'perf': (6500, -0.10, None, 'timesteps/s')},
130+
'pilatus:mc': {'perf': (7500, -0.10, None, 'timesteps/s')}
121131
}
122132
},
123133
}

cscs-checks/apps/namd/namd_check.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,10 @@
1212
class NamdBaseCheck(rfm.RunOnlyRegressionTest):
1313
def __init__(self, arch, scale, variant):
1414
self.descr = 'NAMD check (%s, %s)' % (arch, variant)
15-
self.valid_prog_environs = ['builtin']
15+
if self.current_system.name == 'pilatus':
16+
self.valid_prog_environs = ['cpeIntel']
17+
else:
18+
self.valid_prog_environs = ['builtin']
1619
self.modules = ['NAMD']
1720

1821
# Reset sources dir relative to the SCS apps prefix

cscs-checks/apps/quantumespresso/quantumespresso_check.py

Lines changed: 16 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,11 @@
99

1010
class QuantumESPRESSOCheck(rfm.RunOnlyRegressionTest):
1111
def __init__(self):
12-
self.valid_prog_environs = ['builtin']
12+
if self.current_system.name == 'pilatus':
13+
self.valid_prog_environs = ['cpeGNU']
14+
else:
15+
self.valid_prog_environs = ['builtin']
16+
1317
self.modules = ['QuantumESPRESSO']
1418
self.executable = 'pw.x'
1519
self.executable_opts = ['-in', 'ausurf.in']
@@ -40,14 +44,14 @@ class QuantumESPRESSOCpuCheck(QuantumESPRESSOCheck):
4044
def __init__(self, scale, variant):
4145
super().__init__()
4246
self.descr = f'QuantumESPRESSO CPU check (version: {scale}, {variant})'
43-
self.valid_systems = ['daint:mc', 'eiger:mc']
47+
self.valid_systems = ['daint:mc', 'eiger:mc', 'pilatus:mc']
4448
if scale == 'small':
4549
self.valid_systems += ['dom:mc']
4650
energy_reference = -11427.09017218
4751
if self.current_system.name in ['daint', 'dom']:
4852
self.num_tasks = 216
4953
self.num_tasks_per_node = 36
50-
elif self.current_system.name == 'eiger':
54+
elif self.current_system.name in ['eiger', 'pilatus']:
5155
self.num_tasks = 96
5256
self.num_tasks_per_node = 16
5357
self.num_cpus_per_task = 16
@@ -64,7 +68,7 @@ def __init__(self, scale, variant):
6468
if self.current_system.name in ['daint']:
6569
self.num_tasks = 576
6670
self.num_tasks_per_node = 36
67-
elif self.current_system.name in ['eiger']:
71+
elif self.current_system.name in ['eiger', 'pilatus']:
6872
self.num_tasks = 256
6973
self.num_tasks_per_node = 16
7074
self.num_cpus_per_task = 16
@@ -92,22 +96,26 @@ def __init__(self, scale, variant):
9296
'small': {
9397
'dom:mc': {'time': (115.0, None, 0.05, 's')},
9498
'daint:mc': {'time': (115.0, None, 0.10, 's')},
95-
'eiger:mc': {'time': (66.0, None, 0.10, 's')}
99+
'eiger:mc': {'time': (66.0, None, 0.10, 's')},
100+
'pilatus:mc': {'time': (66.0, None, 0.10, 's')}
96101
},
97102
'large': {
98103
'daint:mc': {'time': (115.0, None, 0.10, 's')},
99-
'eiger:mc': {'time': (53.0, None, 0.10, 's')}
104+
'eiger:mc': {'time': (53.0, None, 0.10, 's')},
105+
'pilatus:mc': {'time': (53.0, None, 0.10, 's')}
100106
}
101107
},
102108
'prod': {
103109
'small': {
104110
'dom:mc': {'time': (115.0, None, 0.05, 's')},
105111
'daint:mc': {'time': (115.0, None, 0.10, 's')},
106-
'eiger:mc': {'time': (66.0, None, 0.10, 's')}
112+
'eiger:mc': {'time': (66.0, None, 0.10, 's')},
113+
'pilatus:mc': {'time': (66.0, None, 0.10, 's')}
107114
},
108115
'large': {
109116
'daint:mc': {'time': (115.0, None, 0.10, 's')},
110-
'eiger:mc': {'time': (53.0, None, 0.10, 's')}
117+
'eiger:mc': {'time': (53.0, None, 0.10, 's')},
118+
'pilatus:mc': {'time': (53.0, None, 0.10, 's')}
111119
}
112120
}
113121
}

0 commit comments

Comments
 (0)