Skip to content


IDL's primary use is in the analysis and display of scientific data through its programming, plotting, and image display facilities.

Availability at NERSC

We currently support IDL 8.5 and IDL 8.9 (default) on Perlmutter.

Using IDL at NERSC

First load the IDL module

module load idl

and start IDL by running


Or to use the IDL development environment, first log on to Perlmutter via NoMachine and then type:

module load idl

IDL has a rich set of demos. To view them, log in with the -X or -Y SSH option, then in the IDL command line, type:


Running IDL procedures via batch job

If you would prefer to run IDL via a batch job, here is a simple demonstration workflow.

Let's assume we would like to run an IDL procedure called

pro idl_hello
print, 'Hello world from IDL'

Here is the batch script that will run our IDL procedure which we will call For more help setting up your batch script, check out our jobscript generator.

#SBATCH -C cpu
#SBATCH -q regular
#SBATCH -t 00:05:00

#load the idl module
module load idl

#run the application:
idl -e "idl_hello"

Then to submit your idl job, simply type

sbatch will load IDL and execute the procedure that you specified. The key is the idl -e "idl_hello" which allows IDL to execute your procedure via the command line.

For more information about multithreading in IDL see the IDL multi-threading FAQ.

Additional resources

For more information on IDL, please refer to the IDL software home page.