There are two types of interactive jobs. The first type runs on a login node. These applications are typically pre- and post-processing jobs, data management programs, or some other type of "tool". Note that it is not possible to run any MPI application on Carver login nodes.
The second type of interactive job runs on one or more Carver compute nodes. Because the only way to gain access to the compute nodes is through the batch system, these types of jobs may more accurately be called "interactive batch" jobs. The remainder of this section focuses on these types of jobs.
carver% qsub -I
The above command creates an interactive shell on a compute node, in the user's home directory. As a batch job, it has default values for batch queue (debug), number of nodes allocated (1), wall time limit (30 minutes), and other batch attributes. Here is a slightly more complicated example:
carver% qsub -I -q interactive -l nodes=4:ppn=8 -l walltime=00:15:00
This command also creates an interatctive shell on a compute node, but allocates a total of 4 nodes (and requests 8 cores per node). The node running the interactive shell is known as the "head node" (sometimes called the "MOM node"). The -q option specifies this job will run in the interactive batch queue. Finally, the job will have 15 minutes available.
Assume that the above command assigns Carver compute node c0314 as the head node. Once the interactive shell has been started, the user might execute the following commands:
c0314% cd $PBS_O_WORKDIR
c0314% mpirun -np 32 ./example.x
In the above exampe, the cd command takes the user to the directory from which the qsub command was executed (instead of the home directory). Then, a 32-task MPI program is started.
Many more details about batch attributes are described in the Submitting Batch Jobs section. Here are a few key points to keep in mind about interactive batch jobs:
- Depending on system load, it might take several minutes (or longer) for an interactive batch job to start.
- The interactive shell will start in the user's home directory, not (necessarily) the directory in which the qsub command was executed.
- Interactive batch jobs are typically run in either the interactive or debug batch queues, but this is not a requirement. Note that interactive jobs submitted to other batch queues may experience significant delays starting.
- When done with an interactive batch session, users should explicitly terminate the session with "logout", in order to return the compute nodes to the batch system for use by other users.