As of Cobalt 0.99.31, interactive job support for !BlueGenes was added. This mode allows Cobalt to schedule a block for the user's use, which will be booted for the user by default, and will activate an interactive shell session on the node that qsub was invoked on when the block is ready to run. This node is typically a login node.
An interactive job may be submitted to qsub using the -I, --interactive or --mode interactive flags and then not including a binary to run with the submission. A job will be submitted to reserve your requested resources, and the qsub command will block until the requested resources are allocated and ready to run. If --disable_preboot is used then the system will not boot the block and will hand control of the resources to the user, which they may boot using boot-block, as they would in an ensemble job.
The interactive job will terminate, and all resources will be cleared once the job's walltime has been exceeded. The interactive job may be terminated early by sending an EOT to the shell (CTRL-D) or by exiting the shell.
Once running, a user may issue runjob commands against their allocated block. The allocated block name is available via the $COBALT_PARTNAME environment variable.
The interactive shell will be run on a front-end node and not an IO Node. All tools that will run in the shell session, but not on the compute hardware, i.e. not run via runjob, must be compiled for the front-end node environment.
Interactive mode may not be used with any other mode (script, c1, c2, c4, etc.)
Since the resources are reserved during the entire time of the runjob, it is suggested that the time spent running via runjob be maximized. It is recommended that users not run time-intensive tasks on the front-end node during these jobs, like compilations.