UMBC logo
UMBC High Performance Computing Facility
Please note that this page is under construction. We are documenting the 240-node cluster maya that will be available after Summer 2014. Currently, the 84-node cluster tara still operates independently, until it becomes part of maya at the end of Summer 2014. Please see the 2013 Resources Pages under the Resources tab for tara information.
How to run GDL programs on maya

Introduction

On this page we'll see how to run a GDL program on the cluster. GDL stands for "GNU Data Language", and is an open source alternative to IDL. Before proceeding, make sure you've read the How To Run tutorial.

A simple Hello World script

The following Hello World program demonstrates how to run a GDL program on maya
; sayhello.pro
pro sayhello,what
  print,'HELLO ',what
end

Download: ../code/sayhello-gdl/sayhello.pro
We'll also make a main program:
; main.pro
pro main
  sayhello,'WORLD'
end

Download: ../code/sayhello-gdl/main.pro
The job is very quick, so we can run it interactively on the front-end node to make sure things are working
[araim1@maya-usr1 sayhello-gdl]$ gdl
GDL - GNU Data Language, Version 0.9
For basic information type HELP,/INFO
'GDL_STARTUP'/'IDL_STARTUP' environment variables both not set.
No startup file read.
GDL> main
% Compiled module: MAIN.
% Compiled module: SAYHELLO.
HELLO WORLD
GDL>
*** ctrl-d to quit ***
[araim1@maya-usr1 sayhello-gdl]$
We'll create a batch script to run the program on a compute node
#!/bin/bash
#SBATCH --job-name=sayhello
#SBATCH --output=slurm.out
#SBATCH --error=slurm.err
#SBATCH --partition=develop

echo "main" | gdl

Download: ../code/sayhello-gdl/run.slurm
Now we can submit our job to the scheduler
[araim1@maya-usr1 sayhello-gdl]$ sbatch run.slurm
[araim1@maya-usr1 sayhello-gdl]$
Eventually the job will complete. When it does, it will create slurm.out and slurm.err files with the following output:
[araim1@maya-usr1 sayhello-gdl]$ cat slurm.err
[araim1@maya-usr1 sayhello-gdl]$ cat slurm.out
% Compiled module: MAIN.
% Compiled module: SAYHELLO.
HELLO WORLD
[araim1@maya-usr1 sayhello-gdl]$