Matlab
Description and Overview
MATLAB is a high-performance language for technical computing. It integrates computation, visualization, and programming in an easy-to-use environment where problems and solutions are expressed in familiar mathematical notation. MATLAB features a family of add-on application-specific solutions called toolboxes. Toolboxes are comprehensive collections of MATLAB functions (M-files) that extend the MATLAB environment to solve particular classes of problems. These are the toolboxes installed in NERSC MATLAB, along with the number of licenses.
Toolbox | Number of Licenses |
Image Processing | 2 |
Neural Networks | 1 |
Optimization | 2 |
Parallel Computing | 2 |
Signal Processing | 1 |
Statistics | 2 |
The name MATLAB stands for matrix laboratory. MATLAB was originally written to provide easy access to matrix software developed by the LINPACK and EISPACK projects. Today, MATLAB engines incorporate the LAPACK and BLAS libraries, embedding the state of the art in software for matrix computation.
How to Use Matlab
Matlab is available at NERSC on Carver and Euclid. Type the following commands to use Matlab:
module load matlab
matlab
The number of Matlab licenses at NERSC is not very large, so users should not be running a Matlab session when it is not being actively used.
Memory usage is tightly restricted on Carver. Carver's login nodes have hard limits of 2GB per process, and by default compute nodes do as well. On login node the full 2GB may be made available from with shell specific commands. For example in bash:
ulimit -S {-d,-m,-v,-s} unlimited
In the csh shell use the limit command. On compute nodes hard resource limits may be modified in the qsub command. For example, the following command sets the hard limit at 20GB.
qsub -I -X -V -q interactive -l nodes=1:ppn=1 -l walltime=00:30:00 -l pvmem:20GB
The following program illustrates how matlab can be used in parallel. NERSC's licesnse currently limit parallel use to a single node and at most 12 threads.
%hello-world.m matlabpool open 8 spmd rank=labindex; fprintf(1,'Hello %d\n',rank); end matlabpool close
For loop level parallelism Matlab provides the parfor construct.
Documentation
Extensive on-line documentation is available. You may subscribe to the MATLAB Digest, a monthly e-mail newsletter by sending e-mail to subscribe@mathworks.com.
Availability
Package | Platform | Category | Version | Module | Install Date | Date Made Default |
---|---|---|---|---|---|---|
MATLAB | carver | applications/ visualization | R2010a | matlab/R2010a | 2010-05-21 | 2010-05-21 |
MATLAB | carver | applications/ visualization | R2010a | matlab-nofonts/R2010a | 2012-01-10 | 2012-01-12 |
MATLAB | carver | applications/ visualization | R2010b | matlab/R2010b | 2012-01-10 | |
MATLAB | carver | applications/ visualization | R2010b | matlab-nofonts/R2010b | 2012-01-10 | |
MATLAB | carver | applications/ visualization | R2011b | matlab/R2011b | 2012-01-10 | 2012-01-18 |
MATLAB | carver | applications/ visualization | R2011b | matlab-nofonts/R2011b | 2012-01-10 | 2012-01-18 |
MATLAB | carver | applications/ visualization | R2012a | matlab-nofonts/R2012a | 2012-04-06 | 2012-04-11 |
MATLAB | carver | applications/ visualization | R2012a | matlab/R2012a | 2012-04-02 | 2012-04-11 |
MATLAB | hopper | applications/ visualization | R2011b | matlab_ccm/R2011b | 2012-04-04 | |
MATLAB | hopper | applications/ visualization | R2012a | matlab_ccm/R2012a | 2012-04-04 | 2012-04-04 |