HPC/Applications/matlab: Difference between revisions

From CNM Wiki
Jump to navigation Jump to search
 
(27 intermediate revisions by the same user not shown)
Line 1: Line 1:
== Alternatives ==
MATLAB is vendor-specific, and comparably expensive licensed software and thus not generally available.
Consider using an unencumbered alternative solution.
=== Octave ===
If you have existing MATLAB code, try running in using [http://www.gnu.org/software/octave/ '''GNU Octave'''] instead of MATLAB for all but the most demanding or vendor-specific tasks:
* To start octave:
octave
* [http://www.gnu.org/software/octave/doc/interpreter/index.html GNU Octave Documentation]
* [http://en.wikibooks.org/wiki/MATLAB_Programming/Differences_between_Octave_and_MATLAB Differences between Octave and MATLAB] in the WikiBook ''MATLAB Programming'' (slightly out of date).
* [http://stackoverflow.com/questions/3534867/why-when-should-i-prefer-matlab-over-octave Why/when should I prefer MATLAB over Octave?] – Discussion at [http://stackoverflow.com/ stackoverflow.com].
=== Python or Perl ===
For more flexibility, use a general-purpose scripting language.
* Most users may want to look at [http://www.python.org/ Python] with [http://www.numpy.org/ NumPy], available as module "numpy" on Carbon. See also:
** [http://matplotlib.org/api/mlab_api.html Numerical python functions written for compatability with MATLAB]
** [http://www.scipy.org/NumPy_for_Matlab_Users NumPy for Matlab Users]
* Users who like a stonger Unix flavor should look at [http://www.perl.org/ Perl].
== Licensing ==
== Licensing ==
[http://www.mathworks.com/ MATLAB] is available on Carbon on request, and is subject to strictly limited license terms.
[http://www.mathworks.com/ MATLAB] is available on Carbon on request, and is subject to strictly limited license terms.
Line 25: Line 6:
Running MATLAB is restricted to:
Running MATLAB is restricted to:
* '''Argonne employees''' (including consultants and students),
* '''Argonne employees''' (including consultants and students),
* by '''one user at a time''',
* by '''one user at a time'''.
<!--
<!--
* on node '''clogin5 only''',
* on node '''clogin5 only''',
Line 43: Line 24:
To request access to MATLAB on Carbon, [mailto:[email protected]?subject=MATLAB%20on%20Carbon send an email].
To request access to MATLAB on Carbon, [mailto:[email protected]?subject=MATLAB%20on%20Carbon send an email].
-->
-->
== Alternatives ==
Given licensing and availability limitations of MATLAB you may wish to consider using alternative solutions, especially for new projects.
=== Octave ===
If you have existing MATLAB code, try running in using [http://www.gnu.org/software/octave/ '''GNU Octave'''] instead of MATLAB for all but the most demanding or vendor-specific tasks:
* To start octave:
octave
* [http://www.gnu.org/software/octave/doc/interpreter/index.html GNU Octave Documentation]
* [http://en.wikibooks.org/wiki/MATLAB_Programming/Differences_between_Octave_and_MATLAB Differences between Octave and MATLAB] in the WikiBook ''MATLAB Programming'' (slightly out of date).
* [http://stackoverflow.com/questions/3534867/why-when-should-i-prefer-matlab-over-octave Why/when should I prefer MATLAB over Octave?] – Discussion at [http://stackoverflow.com/ stackoverflow.com].
=== Python or Perl ===
For more flexibility, use a general-purpose scripting language.
* Most users may want to look at [http://www.python.org/ Python] with [http://www.numpy.org/ NumPy], available as module "numpy" on Carbon. See also:
** [http://matplotlib.org/api/mlab_api.html Numerical python functions written for compatability with MATLAB]
** [http://www.scipy.org/NumPy_for_Matlab_Users NumPy for Matlab Users]
* Users who like a stonger Unix flavor should look at [http://www.perl.org/ Perl].
=== NLopt – Nonlinear optimization ===
For users wishing to solve nonlinear optimization problems, the [[HPC/Applications#nlopt | nlopt module]] is a fairly general-purpose optimization library with interfaces in C, C++ and Fortran.


== Running MATLAB ==
== Running MATLAB ==
Line 55: Line 57:
  matlab -nodisplay
  matlab -nodisplay
: Suppresses X11.
: Suppresses X11.
== Documentation ==
Consult the vendor's documentation:
* http://www.mathworks.com/help/matlab/index.html
: '''Caution:''' This page presents the vendor's current release (R2014b at time of writing). To see documentation specific to the release installed on Carbon (R2013a), whose behavior could differ from the current release, see the tab "Other Releases". You will need an existing or new user-specific site login.
* http://www.mathworks.com/help/matlab/getting-started-with-matlab.html .
== Using the MATLAB compiler ==
The MATLAB compiler, available on Carbon, allows you to create standalone Linux binaries that ''do not need a MATLAB license token'' to run.
For documentation, see [[HPC/Applications/matlab/Compiler]].
== Parallel toolkit==
See [[HPC/Applications/matlab/Parallel]].


== Troubleshooting ==
== Troubleshooting ==
Line 80: Line 96:
'''Solution:'''
'''Solution:'''
* Wait a few minutes or hours.
* Wait a few minutes or hours.
* For very urgent requests, [mailto:[email protected]?Subject=MATLAB%20on%20Carbon%20busy Send a support request.]
* For urgent request, to locate and possibly terminate an existing session, [mailto:[email protected]?Subject=MATLAB%20on%20Carbon%20busy Send a support request.]

Latest revision as of 18:00, November 24, 2014

Licensing

MATLAB is available on Carbon on request, and is subject to strictly limited license terms. Running MATLAB is restricted to:

  • Argonne employees (including consultants and students),
  • by one user at a time.

Toolboxes

We have the following toolboxes installed:

  • Curve Fitting Toolbox
  • Image Processing Toolbox
  • Optimization Toolbox
  • Parallel Computing Toolbox
  • Statistics Toolbox


Alternatives

Given licensing and availability limitations of MATLAB you may wish to consider using alternative solutions, especially for new projects.

Octave

If you have existing MATLAB code, try running in using GNU Octave instead of MATLAB for all but the most demanding or vendor-specific tasks:

  • To start octave:
octave

Python or Perl

For more flexibility, use a general-purpose scripting language.

NLopt – Nonlinear optimization

For users wishing to solve nonlinear optimization problems, the nlopt module is a fairly general-purpose optimization library with interfaces in C, C++ and Fortran.

Running MATLAB

  • To get started, load the "matlab" module as described at HPC/Module Setup.
  • Then choose how to run the application:
GUI
matlab
Command line
For basic calculations, you could save some startup time by simply using the text interface.
matlab -nojvm
Does not load the Java VM and toolboxes requiring any java.

or

matlab -nodisplay
Suppresses X11.

Documentation

Consult the vendor's documentation:

Caution: This page presents the vendor's current release (R2014b at time of writing). To see documentation specific to the release installed on Carbon (R2013a), whose behavior could differ from the current release, see the tab "Other Releases". You will need an existing or new user-specific site login.

Using the MATLAB compiler

The MATLAB compiler, available on Carbon, allows you to create standalone Linux binaries that do not need a MATLAB license token to run.

For documentation, see HPC/Applications/matlab/Compiler.

Parallel toolkit

See HPC/Applications/matlab/Parallel.

Troubleshooting

Access

To run MATLAB on Carbon, you must be a member of the "employees" group. You could still load the "matlab" module if you are not, but it will not enable anything.

  • To inspect your current group membership, run:
groups
The word "employees" must show.


License in use

License checkout failed.
License Manager Error -9
This error may occur when:
-The hostid of this computer does not match the hostid in the license file.
-A Designated Computer installation is in use by another user.
If no other user is currently running MATLAB, you may need to activate.

Solution:

  • Wait a few minutes or hours.
  • For urgent request, to locate and possibly terminate an existing session, Send a support request.