Skip to main content

Running Jobs on the Peregrine System

Learn about running jobs on the Peregrine high-performance computing (HPC) system.

Job Scheduling and Management

To allow multiple users to share the system, Peregrine uses the Moab workload manager/job scheduler and the Torque resource manager. These tools have commands for job submission, job monitoring, and job control (hold, delete, and resource request modification).

A "job" contains a list of required consumable resources (such as nodes), a list of job constraints (when, where and how the job should run) and an execution environment, which includes things like an executable, input and output files).

Both interactive jobs (you are given a shell on one or more compute nodes) and regular "batch" jobs are supported.

All compute nodes are scheduled so that only one job may use a node at a time.

To run a job on Peregrine, you must have a project resource allocation.

Each project has a project handle associated with it, which was specified in the project request document. Jobs submitted without a valid project handle will be rejected with an error message.  Please note that this project identifier is referred to as an allocation handle in error messages and as an account string in system man pages.  The project handle may be included with the -A option either on the command line or within the batch script.  After usage exceeds the node hour allocation for a project, jobs will run at very low priority.

Submitting Jobs

To submit jobs on Peregrine, the Torque qsub command should be used. This can be used to start an interactive job or to run a job involving a script that is run by Torque.

% qsub -A <project-handle> <script>
% qsub -A <project-handle> -I

If you are doing automated job submissions, please limit the submission rate to no more than 20 jobs per second.

More Information

Also see information on: