Usage: jcmwave_daemon_add_queue(options)
Purpose: registers a queue as a computing resource
Input:
options: key-value list (or matlab) structure to configure the queue
options.Hostname -> host name of the (remote) login node of the queue
To form a login chain concatenate the hostnames with
';' separators, i.e 'gateway.com;maxwell'
options.JCMROOT -> JCMsuite installation path on computing nodes of the queue
default: same directory as local installation
options.Login -> Login name to the(remote) login node of the queue
For a login chain concatenate the user names with
';' separators, i.e 'user1;user2'
options.SSHClient -> ssh client used to establish a secure connection to the
remote machine. As a default the system ssh client
is used (if not available on Windows Putty's plink is used)
For a login chain concatenate ssh clients with
';' separators, i.e 'plink;ssh'
options.SSHAgentForwarding -> Enables forwarding of the authentication agent connection.
('yes'/'no', default 'no')
options.SSHTimeOut -> Timeout for establishing the ssh connection (default 6s)
options.Multiplicity -> allow for multiply simultaneous submission of jobs to the queue
default: 10
options.Type -> Determines type of batch queue. Possible values are: Slurm
default: Slurm
options.NThreads -> Number of CPUs/threads used by one job in the queue
options.OOCDir -> swapping directory for out-of-core data
options.MaxCoreSize -> restricts maximum core RAM usage (requires setting
of swapping directory OOCDIR)
The following options are used to restrict resource allocations in queues:
options.Account -> Your queue account [optional]
options.PartitionName -> Name of the cluster partition you want to add
options.NNodes -> number of nodes allocated for each job to run a cluster parallel problem
options.NTasks -> number of tasks allocated for each job to run a cluster parallel problem
options.NTasksPerNode -> (maximum) number of taks per node
options.MemoryPerJob -> Reserve at least MemPerCPU MB of RAM for every job that is run on this allocation
For a distributed job with running on multiple nodes this is the maximum memory
usage per node
options.Time -> Limit total run time of each job submitted to the queue in minutes
options.MemPerCPU -> Limit allocation to nodes with at least MemPerCPU MB of RAM per CPU employed
options.WorkingDir -> Directory used by JCMsuite to place temporary files.
Project files are copied as well if the project directory
is not shared by the login nodes and the nodes of the queue.
This directory must be accessible by any node of the queue,
i.e. a directory on a shared filesystem.
options.TempDiskSpace -> Require at least TempDiskSpace MB of free temporary disk space on nodes
options.Features -> Constraints job allocation to nodes of the cluster with the selected features.
options.NodeList -> Limit job execution to a specific node of the cluster.
options.ExcludeNode -> Exclude a node of a partition from executing jobs.
Multiple nodes can be entered as a comma separated list
containing no spaces, i.e. maxwell1,maxwell2,... or
as a range of nodes, i.e. maxwell[1-3].
Setting a node list and excluding a node are mutually exclusive.
options.CmdLineArgs -> Command line arguments as used for the submission tool. This allows you to pass options
directly to the submission tool. For a slurm queue these arguments are placed at the
end of the header of the sbatch file. It is possible to skip all the above queue related
arguments and to use only this parameter to configure the queue options.
options.Environment -> list of environment variables (separated by white spaces)
....
Output: resource identifier (integer vector for multiple used resources)
Warning: Adding a job queue recursively increases the number of
simultaneously submitted jobs in this queue.