Running SAS on the cluster is similar to running any other serial job. Make sure you’ve read the tutorial for C programs first, to understand the basics. We will not demonstrate any parallel code here, so reading just the serial section is okay for now.
For more information about the software, see the SAS website.
Here is a sample script that plots homework scores versus test scores in one EPS file and test scores versus homework scores in another EPS file.
data grades; input homework test; cards; 48 66 72 75 61 70 88 79 75 91 92 93 77 90 58 69 63 68 ; filename file1 'homework-test.eps'; goptions reset=global DEVICE=pslepsfc gsfmode=replace gsfname=file1 hsize=4 vsize=3; proc gplot; plot homework*test; run; filename file2 'test-homework.eps'; goptions reset=global DEVICE=pslepsfc gsfmode=replace gsfname=file2 hsize=4 vsize=3; proc gplot2; plot test*homework; run;
In order to run this script on the cluster nodes, we will need a batch script
#!/bin/bash #SBATCH --job-name=plotgrades #SBATCH --output=slurm.out #SBATCH --error=slurm.err #SBATCH --partition=develop sas plotgrades.sas
We can then run that script
[araim1@maya-usr1 plotgrades-SAS]$ slurm run.slurm sbatch: Submitted batch job 2623 [araim1@maya-usr1 plotgrades-SAS]$
Once your job completes, it should produce several files.
[straha1@maya-usr1 plotgrades-SAS]$ ls homework-test.eps plotgrades.log test-homework.eps run.slurm plotgrades.sas test-homework.gif [straha1@maya-usr1 plotgrades-SAS]$
The slurm.err and slurm.out files contain everything that your job printed to its error and output streams, respectively. The plotgrades.log file contains detailed information about what SAS did while running your plotgrades.sas program. The two EPS files homework-test.eps and test-homework.eps are scatter plots that your program created. They should look something like this
except that we have converted them to GIF to display above. You can download sample output files using these links