1539
Comment:
|
1462
|
Deletions are marked like this. | Additions are marked like this. |
Line 2: | Line 2: |
= Title = <<TableOfContents(2)>> |
= Job Scripts = <<TableOfContents(3)>> |
Line 8: | Line 8: |
{{{#!/bin/bash |
{{{ |
Line 11: | Line 10: |
Line 13: | Line 11: |
Line 15: | Line 12: |
Line 17: | Line 13: |
Line 19: | Line 14: |
Line 22: | Line 16: |
cd ${SLURM_SUBMIT_DIR} |
|
Line 25: | Line 17: |
someApp <args> |
someApp |
Line 34: | Line 25: |
{{{#!/bin/bash |
{{{ |
Line 37: | Line 27: |
Line 39: | Line 28: |
Line 41: | Line 29: |
Line 43: | Line 30: |
Line 45: | Line 31: |
Line 51: | Line 36: |
Job Scripts
Serial Single Threaded
This example illustrates a job script designed to run a simple single-threaded processes on a single compute node:
#SBATCH --job-name=mySerialjob #SBATCH --nodes=1 #SBATCH --ntasks-per-node=1 #SBATCH --cpus-per-task=1 #SBATCH --time=0-00:20:00 #SBATCH --mem=3102 module load someApp someApp
Explanation
A single process run only requires 1 node, as well as 1 cpu and a single task. These are reflected in the example script. We change to the same directory from where we submitted the job ( ${SLURM_SUBMIT_DIR} to produce our output. Then we load the module "someApp" and execute it.
Multi-Threaded Single Node
In this example we are running an application capable of utilizing multiple process threads on a single node (BLAST):
#SBATCH --job-name=myBLASTjob #SBATCH --nodes=1 #SBATCH --ntasks-per-node=1 #SBATCH --cpus-per-task=8 #SBATCH --time=0-01:00:00 #SBATCH --mem=3102 cd ${SLURM_SUBMIT_DIR} module load BLAST blastn --num_threads 8 <...>
Explanation
In this case we still have a single task (our blastn run) but we require 8 cpu cores to accommodate the 8 threads we've specified on the command line. The ellipses between the angle brackets represents the balance of our command line arguments.
command
CategoryHPC