User Tools

Site Tools


matlab_usage

This is an old revision of the document!


Matlab

Matlab via qsub batch jobs

You may need to run Matlab scripts in a qsub job. It's fairly easy. This command will run a series of Matlab commands from the command line (shell), which we can use in a qsub job script:

matlab -nodisplay -r "a=[1 2 3]; disp(a); disp(a+1); exit" 

Explanation:

  • -nodisplay - this option tells Matlab to run in command-line mode, i.e. with no GUI windows
  • -r - this option tells Matlab to run the follow text as commands. This could be just the name of the matlab script (.m file) you want to run, for example. This text is the same as you would enter on the command line in the Matlab GUI window. Put a semicolon between commands.
  • exit - add 'exit' as the last command (e.g. after calling your matlab script) to make sure matlab exits when the script is finished

So if you put the above text in a file called matlabjob and run:

qsub matlabjob

you'll get the following output in your matlabjob.o<jobid> file (where <jobid> will be the job id of your run of qsub):

                                                < M A T L A B (R) >
                                      Copyright 1984-2013 The MathWorks, Inc.
                                        R2013a (8.1.0.604) 64-bit (glnxa64)
                                                 February 15, 2013

 
To get started, type one of these: helpwin, helpdesk, or demo.
For product information, visit www.mathworks.com.
 
   1     2     3

   2     3     4
   

Parallel Toolbox Considerations

Number of Workers

Note that when using Matlab's Parallel Toolbox, you generally must specify the number of workers to match the number of OGS/SGE slots requested by your job. To programmatically get the number of slots you requested, you can use the NSLOTS shell environment variable, or the matlab '

matlab_usage.1426099391.txt.gz · Last modified: 2015/03/11 18:43 by mgstauff