jobqueues.pbsqueue module#

class jobqueues.pbsqueue.PBSQueue(_configapp=None, _configfile=None, _findExecutables=True, _logger=True)#

Bases: SimQueue

Warning

This queue system has not been tested and can possibly fail.

Queue system for PBS

Parameters:
  • jobname (str, default=None) – Job name (identifier)

  • queue (str, default=None) – The queue to run on

  • ngpu (int, default=0) – Number of GPUs to use for a single job

  • ncpu (int, default=1) – Number of CPUs to use for a single job

  • memory (int, default=1000) – Amount of memory per job (MB)

  • walltime (int, default=3600) – Job timeout (s)

  • environment (str, default='ACEMD_HOME,HTMD_LICENSE_FILE') – Envvars to propagate to the job.

  • datadir (str, default=None) – The path in which to store completed trajectories.

  • trajext (str, default='xtc') – Extension of trajectory files. This is needed to copy them to datadir.

  • cluster (str, default=None) – Select nodes from a single specified cluster

  • scratch_local (int, default=None) – Local scratch in MB

Examples

>>> from jobqueues.pbsqueue import PBSQueue
>>> s = PBSQueue()
>>> s.queue = 'multiscale'
>>> s.submit('/my/runnable/folder/')  # Folder containing a run.sh bash script
inprogress(debug=False)#

Returns the sum of the number of running and queued workunits of the specific group in the engine.

Returns:

total – Total running and queued workunits

Return type:

int

property memory#

Subclasses need to have this property. This property is expected to return a integer in MiB

property ncpu#

Subclasses need to have this property

property ngpu#

Subclasses need to have this property

retrieve()#

Subclasses need to implement this method

stop()#

Cancels all currently running and queued jobs

submit(dirs, commands=None)#

Submits all directories

Parameters:

dist (list) – A list of executable directories.