Interactive Sessions
An interactive session is a scheduler job where you can run commands in real-time (i.e., it is qualitatively identical a remote session started via Secure Shell or a terminal session that you've started on your laptop). If you're developing code in the cluster environment or your analysis workflow isn't well-defined and you need to experiment with different command line tools then this is the option you want.
Similar to a Secure Shell (SSH) session or a terminal window, if you close your interactive session the applications that are running in it will be quit and the resources will be freed up for use by other jobs on the cluster. If you need your interactive session to persist, we recommend using the screen or tmux utilities on the login node. Tutorials for these tools can be found below:
To run an interactive job on the cluster, invoke the srun command on the login node (axon.rc) as demonstrated below:
srun --pty bash -i
This command would start an interactive job with the default limits. You would be provided with a session on one of Axon's nodes with one CPU core (and no GPU) for the default job time limit (see here; currently 10 days as of 3/21).
srun --pty -c 2 --nodelist=ax08 --gres=gpu:gtx1080:2 -t 0-01:00 /bin/bash
In the command above the parameters are as follows:
--pty says to start a pseudo terminal interactive session (mandatory for interactive sessions).
-c 2 means use 2 cores (optional, default is 1 core)
--nodelist=ax08 means only run on the node named ax08 (optional, default is any to run on any available node)
--gres=gpu:gtx1080:2 is to use 2 gpu boards of the gtx1080 variety (optional, by default no gpus are allocated, note allocated gpus will appear starting as id 0)
-t 0-01:00 is to set the time for the session, in this case 1 hour (generally, the shorter the time you request, the higher the likelihood your job can be scheduled, this will be come more important as the cluster fills up!)
/bin/bash is to run the program you wish to start in the interactive session, the bash shell (mandatory, you need to specify a program it doesn't have to be a command line interpreter like bash it could by python or matlab if that's what you want to run)