Applications/SAS
Contents
Application Details
- Description: SAS (Statistical Analysis System) is a software suite developed by SAS Institute for advanced analytics, business intelligence, data management, and predictive analytics.
- Versions: 9.4
- Module names: SAS/9.4
- License: Departmental research only multi-platform license, restricted to Accounting and Finance department
- Forum support: https://www.hpc.hull.ac.uk/forum/viewforum.php?f=22
- Further information: http://www.sas.com/en_gb/home.html
Usage Examples
Interactive
[username@login01 ~]$ interactive salloc: Granted job allocation 289669 Job ID 289669 connecting to c170, please wait... Last login: Thu Jan 26 12:59:11 2017 from 10.254.5.246 [username@c170 ~]$ module add test-modules SAS/9.4
To use the full SAS GUI, make sure you have your environment setup as detailed in LINK and run sas_en:
[username@c170 ~]$ sas_en
To use the command line interactive line mode and not the GUI, run sas_en –nodms:
[username@c170 ~]$ sas_en –nodms
Some functions invoke a SAS window even in interactive line mode, for full line mode use –noterminal flag, i.e.:
[username@c170 ~]$ sas_en -nodms –noterminal
You can then run your task using a SAS script with the following command:
[username@c170 ~]$ sas_en -noteminal sas_file.sas
Batch Submission
#!/bin/bash #SBATCH -J MATLAB #SBATCH -N 1 #SBATCH -o %N.%j.out #SBATCH -e %N.%j.err #SBATCH -p compute #SBATCH --exclusive module add matlab/2016a matlab -nodisplay -nojvm -nodesktop -nosplash -r my_matlab_m_file
This submission script can be found at /path/to/sample/script Matlab
[username@login01 ~]$ sbatch MATLABtest.job Submitted batch job 289522
Parallel Matlab
By default Matlab on Viper will run on a single core as mutli-threading conflicts with the schedulers resource management, however there are three ways in which Matlab can utilise multiple processors:
Multi-threading
Matlab can use multiple threads for certain built in functions for example linear algebra and numerical functions such as fft, \ (mldivide), eig, svd, and sort. These functions automatically execute on multiple computational threads in a single MATLAB session, allowing them to execute faster on multicore-enabled machines. Additionally, many functions in Image Processing Toolbox are multithreaded
Parallel Computing Toolbox
The Parallel Computing Toolbox allows you to open a number of workers (separate Matlab engines) on the local node, up to the number of cores on that node (28 for standard nodes in an exclusive session).
>> parpool('local',28) Starting parallel pool (parpool) using the 'local' profile ... connected to 28 workers. ans = Pool with properties: Connected: true NumWorkers: 28 Cluster: local AttachedFiles: {} IdleTimeout: 30 minute(s) (30 minutes remaining) SpmdEnabled: true
Distributed Computing Toolbox
The distributed computing toolbox is not currently supported on Viper
Change Log
[2017-01-30] Changed default Matlab launch command in module to matlab -singleCompThread to disable multi-threading