Job script template
From FarmShare
(Difference between revisions)
Line 12: | Line 12: | ||
# | # | ||
# set the maximum memory usage (per slot) | # set the maximum memory usage (per slot) | ||
- | #$ -l mem_free= | + | #$ -l mem_free=2G |
# | # | ||
# | # | ||
# set the number of slots, replace '1' with a larger number if needed | # set the number of slots, replace '1' with a larger number if needed | ||
- | #$ -pe | + | #$ -pe fah 1 |
# | # | ||
+ | # on other clusters this pe may have a different name | ||
# | # | ||
Line 41: | Line 42: | ||
# pass the current environment variables | # pass the current environment variables | ||
#$ -V | #$ -V | ||
+ | # | ||
+ | |||
+ | # join the stdout and stderr streams into one file | ||
+ | #$ -j y | ||
# | # | ||
Line 51: | Line 56: | ||
Of course, you can just use the equivalent command line: | Of course, you can just use the equivalent command line: | ||
- | qsub -S /bin/bash -N example_job -l mem_free= | + | qsub -S /bin/bash -N example_job -l mem_free=2G -pe shm 1 -m ea -M $USER@stanford.edu -w e -V -j y /full/path/to/command arg1 arg2 arg3 |
You may need to also have '-b y' if the command is a binary and not a script. | You may need to also have '-b y' if the command is a binary and not a script. |
Revision as of 17:03, 11 September 2013
This is meant to be a script you can copy and adapt to get up and running quickly. A similar one appears at the bottom of the man page for 'qsub'.
#!/bin/bash # the above line is called a 'hashbang' and sets which shell you run under; you probably want bash # # set the name of the job; this will appear in the job listing #$ -N example_job # # # set the maximum memory usage (per slot) #$ -l mem_free=2G # # # set the number of slots, replace '1' with a larger number if needed #$ -pe fah 1 # # on other clusters this pe may have a different name # # set the maximum run time, hh:mm:ss, default is 48hrs on FarmShare #$ -l h_rt=12:00:00 # # # send mail when job ends or aborts #$ -m ea # # # specify an email address #$ -M $USER@stanford.edu # # check for errors in the job submission options #$ -w e # # pass the current environment variables #$ -V # # join the stdout and stderr streams into one file #$ -j y # /full/path/to/command arg1 arg2 arg3 ... #make sure that the command above actually doesn't use more memory or CPU than you specified.
Of course, you can just use the equivalent command line:
qsub -S /bin/bash -N example_job -l mem_free=2G -pe shm 1 -m ea -M $USER@stanford.edu -w e -V -j y /full/path/to/command arg1 arg2 arg3
You may need to also have '-b y' if the command is a binary and not a script.