Exclusive sessions


Use sparingly - it denies resources to other users.

We ask that you don't run anymore than 5 exclusive jobs.

During normal usage when you start a session on a node, your job will execute on a single core/slot.

Certain applications are multi-threaded in their nature, which means that they will use more than one core/slot to gain performance.  It is possible that a multi-threaded application will use all of the possible resources on a node. This will obviously have an impact on other users of the node, who may already be running jobs on the same node. 

Therefore if you are running multi-threaded code you need to ask for exclusive use of a node.  You should bear in mind when using this particular directive (--exclusive), you reserve all of the cores/slots on the node (depending on the node this may be up to 28 slots/cores).  This will mean your jobs are likely to take longer to be allocated to a node, because a node with no other jobs running has to be available.

All of the following applications should be run with the (--exclusive) directive:

  • Stata15/16 MP16
  • Gaussian
  • Gaussview
  • Matlab (Parallel Computing Toolbox)

If you have a need for more resource or wish to discuss this further please email hpc.admin@uea.ac.uk

Using exclusive interactive sessions

  • Starting an exclusive access interactive session

interactive-x

interactive-gpu-x

We have not implemented an exclusive hmem option because it is too expensive in resources, and would have too big an impact on other users.

To request an exclusive batch job


There is an exclusive command in slurm, but if you use it your jobs will likely pend for a long time when the cluster is busy.

You should ntasks instead.  You need to adjust the ntasks to the number of slots on the node.  See queues

for example
#SBATCH -p compute-16-64
#SBATCH --ntasks=16
#SBATCH --ntasks-per-node=16

or

#SBATCH -p compute-24-96
#SBATCH --ntasks=24
#SBATCH --ntasks-per-node=24

Using the --ntasks directive in a jobscript (Gaussian) 

#!/bin/bash
#SBATCH --mail-type=ALL           #Mail events (NONE, BEGIN, END, FAIL, ALL)
#SBATCH --mail-user=<username>@uea.ac.uk    # Where to send mail
#SBATCH -p compute-16-64                 #Which queue to use
#SBATCH --tasks-per-node=16                 # set exclusive use of node

#SBATCH --ntasks=16                          # all slots on the node
#SBATCH --job-name=gaussian-test_job #Job name
#SBATCH -o gaussian-test-%j.out       #Standard output log
#SBATCH -e gaussian-test-%j.err       #Standard error log
#set up environment
module add gaussian/16B01
 #run the application
g09 gauss_opt.inp

Using the --ntasks directive in a jobscript (Stata 15 MP16)

 #run the application#set up environment#!/bin/bash
#SBATCH --mail-type=ALL           #Mail events (NONE, BEGIN, END, FAIL, ALL)
#SBATCH --mail-user=<username>@uea.ac.uk    # Where to send mail
#SBATCH -p compute-16-64                  #Which queue to use
#SBATCH --ntasks-per-node=16                   # set exclusive use of node
#SBATCH --ntasks=16                        
# all slots on the node
#SBATCH --job-name=stata-test_job #Job name
#SBATCH -o stata-test-%j.out       #Standard output log
#SBATCH -e stata-test-%j.err       #Standard error log
#set up environment
module add stata/15
 #run the application
stata-mp -b do stata15_example.dostata

Jobs which need a graphical user interface

eg Matlab, Stata - You need to have x forwarding configured for this to work.