Skip to content

Commit e1db348

Browse files
committed
Added Hades support.
1 parent f2bf853 commit e1db348

File tree

3 files changed

+24
-0
lines changed

3 files changed

+24
-0
lines changed

smartdispatch/config/hades.json

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
{
2+
"@hades": {
3+
"ram": 23,
4+
"modules": ["CUDA/7.5"],
5+
"cores": 8,
6+
"max_walltime": "48:00:00",
7+
"gpus": 6,
8+
"nodes": 9
9+
}
10+
}

smartdispatch/job_generator.py

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ def job_generator_factory(queue, commands, command_params={}, cluster_name=None,
1313
return MammouthJobGenerator(queue, commands, command_params, base_path)
1414
elif cluster_name == "helios":
1515
return HeliosJobGenerator(queue, commands, command_params, base_path)
16+
elif cluster_name == "hades":
17+
return HadesJobGenerator(queue, commands, command_params, base_path)
1618

1719
return JobGenerator(queue, commands, command_params, base_path)
1820

@@ -111,6 +113,16 @@ def generate_pbs(self):
111113
return pbs_list
112114

113115

116+
class HadesJobGenerator(JobGenerator):
117+
118+
def generate_pbs(self):
119+
self.queue.nb_cpus_per_node = self.queue.nb_gpus_per_node
120+
self.queue.nb_gpus_per_node = 0
121+
# Hades does not follow gpus standard and use ppn instead
122+
123+
return JobGenerator.generate_pbs(self)
124+
125+
114126
class GuilliminJobGenerator(JobGenerator):
115127

116128
def generate_pbs(self):

smartdispatch/utils.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,8 @@ def detect_cluster():
122122
cluster_name = "guillimin"
123123
elif server_name.split('.')[-1] == 'helios':
124124
cluster_name = "helios"
125+
elif server_name.split('.')[-1] == 'hades':
126+
cluster_name = "hades"
125127
return cluster_name
126128

127129

0 commit comments

Comments
 (0)