@@ -63,7 +63,7 @@ class LDASsetup:
6363 # ------
6464 # Optional resource manager input fields
6565 # ------
66- optSlurmInpKeys = ['job_name' , 'qos' , 'oserver_nodes' , 'writers-per-node' ]
66+ optSlurmInpKeys = ['job_name' , 'qos' , 'oserver_nodes' , 'writers-per-node' , 'constraint' ]
6767
6868
6969 # ===============================================================================================
@@ -1562,11 +1562,11 @@ class LDASsetup:
15621562 '.' .join ([expid , 'ldas_err' , myDateTime , 'txt' ]),
15631563 ]),
15641564 self .rundir )
1565- constraint = ' cas'
1565+ constraint = '"[mil| cas]" '
15661566 if self .GEOS_SITE == "NAS" :
15671567 constraint = 'cas_ait'
1568- elif self . GEOS_SITE == "NCCS" :
1569- constraint = '"[mil|cas]"'
1568+ elif 'constraint' in self . optRmInp :
1569+ constraint = self . optRmInp [ 'constraint' ]
15701570
15711571 SBATCHQSUB = 'sbatch'
15721572 if self .GEOS_SITE == 'NAS' :
@@ -1852,6 +1852,7 @@ def _printRmInputKeys(rqdRmInpKeys, optRmInpKeys):
18521852 print ('# - writers-per-node = tasks per oserver_node for writing ( default is 5, for future use ),' )
18531853 print ('# IMPORTANT REQUIREMENT: total #writers = writers-per-node * oserver_nodes >= 2' )
18541854 print ('# Jobs will hang when oserver_nodes = writers-per-node = 1.' )
1855+ print ('# - constraint = mil ; submit the job to a particular machine, defaule is "[mil|cas]")
18551856 print (' #')
18561857 for key in optRmInpKeys :
18571858 print ('#' + key + ':' )
0 commit comments