def getSubmitArguments(self, jobNum, jobName, reqs, sandbox, stdout, stderr): reqMap = { WMS.MEMORY: ('pvmem', lambda m: '%dmb' % m) } params = PBSGECommon.getSubmitArguments(self, jobNum, jobName, reqs, sandbox, stdout, stderr, reqMap) # Job requirements if reqs.get(WMS.QUEUES): params += ' -q %s' % reqs[WMS.QUEUES][0] if reqs.get(WMS.SITES): params += ' -l host=%s' % str.join('+', reqs[WMS.SITES]) return params
def getSubmitArguments(self, jobNum, jobName, reqs, sandbox, stdout, stderr): timeStr = lambda s: '%02d:%02d:%02d' % (s / 3600, (s / 60) % 60, s % 60) reqMap = { WMS.MEMORY: ('h_vmem', lambda m: '%dM' % m), WMS.WALLTIME: ('s_rt', timeStr), WMS.CPUTIME: ('h_cpu', timeStr) } # Restart jobs = no params = ' -r n -notify' if self._project: params += ' -P %s' % self._project # Job requirements (queue, nodes) = (reqs.get(WMS.QUEUES, [''])[0], reqs.get(WMS.SITES)) if not nodes and queue: params += ' -q %s' % queue elif nodes and queue: params += ' -q %s' % str.join(',', imap(lambda node: '%s@%s' % (queue, node), nodes)) elif nodes: raise ConfigError('Please also specify queue when selecting nodes!') return params + PBSGECommon.getSubmitArguments(self, jobNum, jobName, reqs, sandbox, stdout, stderr, reqMap)
def getSubmitArguments(self, jobNum, jobName, reqs, sandbox, stdout, stderr): timeStr = lambda s: "%02d:%02d:%02d" % (s / 3600, (s / 60) % 60, s % 60) reqMap = { WMS.MEMORY: ("h_vmem", lambda m: "%dM" % m), WMS.WALLTIME: ("s_rt", timeStr), WMS.CPUTIME: ("h_cpu", timeStr), } # Restart jobs = no params = " -r n" if self._project: params += " -P %s" % self._project # Job requirements (queue, nodes) = (reqs.get(WMS.QUEUES, [""])[0], reqs.get(WMS.SITES)) if not nodes and queue: params += " -q %s" % queue elif nodes and queue: params += " -q %s" % str.join(",", map(lambda node: "%s@%s" % (queue, node), nodes)) elif nodes: raise ConfigError("Please also specify queue when selecting nodes!") return params + PBSGECommon.getSubmitArguments(self, jobNum, jobName, reqs, sandbox, stdout, stderr, reqMap)