Setting Up the Hosts File for Batch Queues

To enable job submissions to a batch queue on a supported queueing system, you must add host entries that define the available queues to the schrodinger.hosts file. The command syntax is described in The Hosts File. There are two settings that define the queue: the Queue setting and the Qargs setting. A sample of the host entries to be inserted into the hosts file is shown below:

# Batch submission to ’bigjobs’ queue under Torque
Name: bigq
Host: cluster
Queue: Torque
Qargs: -q bigjobs
processors: 128
tmpdir: /storage/TMPDIR
#
# Batch submission to ’shortjobs’ queue under Torque
Name: shortq
Host: cluster
Queue: Torque
Qargs: -q shortjobs
processors: 16
tmpdir: /storage/TMPDIR

This example defines two entries named bigq and shortq to which jobs can be sent on the host cluster.

The Job Control facility distinguishes batch queues from hosts by the presence of the Queue setting, which specifies the queueing system. The Queue setting must be set to the subdirectory of $SCHRODINGER/queues that contains the support files for the queueing system. The subdirectories for the supported queueing systems are Torque, PBS10.4, SGE, SLURM2.1, and LSF. The Qargs setting specifies command line arguments for the queueing system’s job submission command; for SGE, for instance, this is the qsub command.

You must also include a host setting because the name setting is used to specify the queue. Like normal remote host entries, host entries for batch queues inherit settings made in the localhost entry of the schrodinger.hosts file. If the queueing software is available to all hosts to which users have access, you can set host to localhost. Otherwise you should set it to the host that runs the queueing software. The host that you use for the host setting must meet the following requirements:

  • It must be able to submit, cancel and query jobs for the queueing system.

  • It must have a single, static host name that can be resolved from the execution hosts (cluster nodes, for example) and the job submission hosts. Job Control must be able to reference this host using a single host name.

  • The host name must always be associated with the same physical machine, so that connections using this host name go to the same machine (such as a cluster head node).

Batch queue entries can also have any of the other settings that host entries have, such as schrodinger and tmpdir. For queues on clusters, the tmpdir setting is required and should refer to a directory that is available to all the nodes and writable by all users who will use that queue. On shared memory machines, the tmpdir setting is optional. You should also add a processors setting for submission of distributed jobs.

You should consider adding an env setting for the SCHRODINGER_LICENSE_RETRY environment variable, particularly if there is likely to be a communication delay in obtaining a license or the license pool is oversubscribed. See Job Control Environment Variables (JOB CONTROL IS DEPRECATED) for the syntax.

Note: You should not add -cwd to the Qargs setting for SGE, as this causes jobs to fail.