Submitting Matlab scripts to the SGE cluster
Submitting matlab jobs to the SGE cluster is a breeze, all that needs to be done is copying the script below and substituting runme6 with your particular matlab .m file.
#!/bin/sh #$ -cwd #$ -j y #$ -S /bin/sh #$ -V . /etc/profile /Volumes/local/bin/matlab6 -nojvm -nosplash -nodisplay -r runme6
Explanation of script line by line:
- this is a sh script
- #$ -cwd
- before executing the script, change into the current directory
- #$ -j y
- the output and errors will be put in the same file (in your current directory)
- #$ -S /bin/sh
- SGE will use the /bin/sh shell
- #$ -V
- export the current environment to SGE
- . /etc/profile
- make sure all our paths are right
- /Volumes/local/bin/matlab6 -nojvm -nosplash -nodisplay -r runme6
- Use the matlab6 binary (change this to the version you desire/need), no gui, no splash screen, and no display used, run the runme6.m script found in the current directory (change this to your particular script.
Wrappers for general script submission
A set of scripts has been created to ease the use of matlab & clustering. The available scripts are as follows:
- matsub6; submits jobs using the matlab 6.5 version
- matsub7; submits jobs using the matlab 7.0 version
- matsub75; submits jobs using the matlab 7.5 version
$ matsub6 myAwesomeMatlabScript.m
Output will be placed in the current directory in a file called mat_log
Licensing and SGE Matlab Jobs
Please note that each job you submit to SGE will use up one of our available license seats. Submitting multiple jobs at once could use up all the seats so no one but you will have access to matlab.
Please be courteous to other matlab users and only submit one job at a time.