Jobs on Atlas

Atlas uses the Slurm Workload Manager as a scheduler and resource manager.

In order to run a job, users should do the following from the log-in node

  • Request resources
    • Parameters
      • -N - number of nodes needed
      • --mem - amount of RAM needed per node
      • -n - number of cores needed per node
      • --time - amount of time needed per node
    • Commands
      • salloc - interactive use
      • sbatch - queued job
        • Parameters can be included in script
  • Provide commands/scripts to be executed on allocated resources
    • srun - interactive use
    • sbatch - queued job

Job Arrays

Job arrays are a mechanism for managing a set of jobs that have identical resource requirements.

  • Created with
    • --array 0-2 (creates 0, 1, 2)
    • --array 0, 2, 4 (creates 0, 2, 4
    • --array 0-6:2 (creates 0, 2, 4, 6)
  • Each job in the array knows which part of the array it is
    • SLURM_ARRAY_TASK_ID
  • Example: Parsing 12 datasets
    • Create job array with --array 0-11 when submitting script
    • Script contains a list of data
    • Each script contains a command to parse the SLURM_ARRAY_TASK_IDth dataset