Interactive Sessions with idev¶
The idev
utility initiates an interactive session on one or more compute nodes so that you can issue commands and run code as if you were doing so on your personal machine. An interactive session is useful for development, as you can quickly compile, run, and validate code. Accessing a single compute node is accomplished by simply executing idev
on any of the TACC systems.
Initiating an Interactive Session¶
To learn about the command line options available for idev
, use idev -help
.
login1$ idev -help
...
OPTION ARGUMENTS DESCRIPTION
-A account_name sets account name (default: in .idevrc)
-m minutes sets time in minutes (default: 30)
-p queue_name sets queue to named queue (default: -p development)
-r resource_name sets hardware
-t hh:mm:ss sets time to hh:mm:ss (default: 00:30:00)
-help [--help ] displays (this) help message
-v [--version ] output version information and exit
Let’s go over some of the most useful idev
command line options that can customize your interactive session:
To change the time limit to be lesser or greater than the default 30 minutes, users can use the -m
command line option. For example, a user requesting an interactive session for an hour would use the command line option -m 60
.
To change the account_name associated with the interactive session, users can use the -A
command line option. This option is useful for when a user has multiple allocations they belong to. For example, if I have allocations on accounts TACC
and Training
, I can use -A
to set the allocation I want to be used like so: -A TACC
or -A Training
.
To change the queue to be different than the default development
queue, users can use the -p
command line option. For example, if a user wants to launch an interactive session on one of Stampede2’s Skylake
(SKX) compute nodes, they would use the command line option -p skx-dev
or -p skx-normal
. Note that the -p skx-large
queue will be out of scope for most project users. You can learn more about the different queues of Stampede2 here.
Note: For the scope of this section, we will be using the default development
queue.
To start a thirty-minute interactive session on a compute node in the development queue with our TRAINING-HPC
allocation:
login1$ idev -A TRAINING-HPC
If launch is successful, you will see output that includes the following excerpts:
...
-----------------------------------------------------------------
Welcome to the Stampede2 Supercomputer
-----------------------------------------------------------------
...
-> After your idev job begins to run, a command prompt will appear,
-> and you can begin your interactive development session.
-> We will report the job status every 4 seconds: (PD=pending, R=running).
-> job status: PD
-> job status: R
-> Job is now running on masternode= c449-0015...OK
...
c449-0015[knl](268)$
Exercise¶
Let’s revisit the job we ran in the previous section. This time, we will be going through each command we entered into job.slurm
interactively.
c449-0015[knl](268)$ pwd
/home1/03439/wallen/IntroToLinuxHPC/Lab04
c449-0015[knl](269)$ ls
data job.slurm results vina_job.o864828
c449-0015[knl](270)$ echo "starting at:"
starting at:
c449-0015[knl](271)$ date
Mon Jun 29 0X:XX:XX CDT 2020
c449-0015[knl](272)$ module list
Currently Loaded Modules:
# it is okay if you have loaded modules from past sessions
c449-0015[knl](273)$ module load intel/17.0.4
c449-0115[knl](274)$ module load boost/1.64
c449-0115[knl](275)$ module load autodock_vina/1.1.2
c449-0115[knl](276)$ module list
Currently Loaded Modules:
1) intel/17.0.4
2) boost/1.64
3) autodock_vina/1.1.2 #the order in which the modules are listed does not matter
c449-0015[knl](277)$ cd data/
c449-0015[knl](278)$ vina --config configuration_file.txt --out ../results/output_ligands.pdbqt
#################################################################
# If you used AutoDock Vina in your work, please cite: #
# #
# O. Trott, A. J. Olson, #
# AutoDock Vina: improving the speed and accuracy of docking #
# with a new scoring function, efficient optimization and #
# multithreading, Journal of Computational Chemistry 31 (2010) #
# 455-461 #
# #
# DOI 10.1002/jcc.21334 #
# #
# Please see http://vina.scripps.edu for more information. #
#################################################################
Detected 272 CPUs
WARNING: at low exhaustiveness, it may be impossible to utilize all CPUs
Reading input ... done.
Setting up the scoring function ... done.
Analyzing the binding site ... done.
Using random seed: -31156704
Performing search ...
0% 10 20 30 40 50 60 70 80 90 100%
|----|----|----|----|----|----|----|----|----|----|
***************************************************
done.
Refining results ... done.
mode | affinity | dist from best mode
| (kcal/mol) | rmsd l.b.| rmsd u.b.
-----+------------+----------+----------
1 -12.3 0.000 0.000
2 -11.1 1.223 1.866
3 -11.0 3.000 12.459
4 -10.5 2.268 12.434
5 -10.4 2.272 13.237
6 -10.3 3.146 13.666
7 -10.3 3.553 12.345
8 -10.2 1.827 13.667
9 -9.8 2.608 12.630
Writing output ... done.
c449-0015[knl](279)$ echo "ending at:"
c449-0015[knl](280)$ date
Mon Jun 29 0X:XX:XX CDT 2020
To exit an interactive session, you can either use logout
or wait until the connection to the compute node is closed by the remote host.