Skip to content

IDL

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.9 (default) on Perlmutter.

Using IDL at NERSC

First load the IDL module

shell module load idl

and start IDL by running

shell idl

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

shell module load idl idlde

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:

shell demo

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 hello_idl.pro:

shell pro idl_hello print, 'Hello world from IDL' end

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

```slurm

!/bin/bash

SBATCH -N 1

SBATCH -C cpu

SBATCH -q regular

SBATCH -t 00:05:00

SBATCH -L idl@nersc

load the idl module

module load idl

run the application:

idl -e “idl_hello” ```

Then to submit your idl job, simply type

shell sbatch idl_batch.sh

idl_batch.sh 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.

Licenses in Slurm jobs

Slurm supports allocating licenses along with batch jobs so jobs will wait in the queue with the reason Licenses until a license is available to run the job. This helps to make sure a job does not abruptly fail if there are no licenses available at the start of the job. Licenses are enabled in Slurm for IDL and all toolboxes and can be accessed with the options below. Multiple licenses can be added as a comma separated list or with multiple additions of the -L or --licenses flag to the batch script or command line.

IDL Toolbox Slurm License name
IDL idl@nersc
IDL Runtime idl_rt@nersc
IDL Video idl_video_rw@nersc

Additional resources

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