MatLab

Overview

  • MATLAB is a proprietary multi-paradigm programming language and numeric computing environment developed by MathWorks. MATLAB allows matrix manipulations, plotting of functions and data, implementation of algorithms, creation of user interfaces, and interfacing with programs written in other languages.

  • The MathWork’s UW Portal Page.

  • MATLAB AI Resources for The University of Wyoming

  • Versions: New versions of MATLAB usually come out twice a year, typically in the February/March timeframe and the second in the September\October. ARCC receives a notification when new releases are available and we schedule to have this installed within three weeks of that notification (work load permitting). You can use module spider matlab to confirm which versions are available on a cluster, but we will explicitly update this page once a new version has been installed.

Using

Use the module name matlab to discover versions available and to load the application.

Since MATLAB is predominantly a GUI, we would suggest running it from our Teton SouthPass service, and/or our equivalent Beartooth service via an GUI desktop. Once development and testing have been completed, jobs can be submitted using sbatch.

You can run without the GUI using matlab -nodesktop from the command line.

First Time Usage

The first time you use MATAB on the cluster you’ll need to set up a cluster profile for yourself. Start MATLAB and under Parallel select “Discover Clusters…”

image-20240703-190342.png
image-20240703-190414.png
Only check On your network.

Update the Configuration: Under Parallel select “Create and Manage Clusters…”

MATLAB Script: These can be updated within your MATLAB scripts using:

c = parcluster; c.AdditionalProperties.WallTime = '1:00:00'; c.AdditionalProperties.AccountName = 'arcc';

Multicore

Matlab can run across multicores, multiple nodes and on GPUs. Please review the trainings below.

To run parallel jobs, you are required to run the configCluster script within matlab - please read through the MATLAB_Parallel_Computing_Workshop_Part_II_20220408.pdf presentation below, specifically slide 23. If you do not, then you will see an error of the form:

Unrecognized method, property, or field 'AdditionalProperties' for class 'parallel.cluster.Local'.

If the parallel job is running correctly, you should see a message of the form:

Starting parallel pool (parpool) using the 'MedicineBow' profile ...

Trainings

MathWorks presented an introduction to using MATLAB on the cluster in April 2022. Here are the slides from the two presentations:

  • The first is a general introduction to use MATLAB, and was hosted on MathWorks cloud environment.

  • The second has a hands on workshop running from ARCC’s SouthPass service.

On-Line: Self-Paced: MathWorks:

  • MATLAB Onramp: Get started quickly with the basics of MATLAB: 2 hours

  • MATLAB Fundamentals: Learn core MATLAB functionality for data analysis, modeling, and programming: 16.5 hours

  • MATLAB Programming Techniques: Improve the robustness, flexibility, and efficiency of your MATLAB code.: 16 hours

  • MATLAB for Data Processing and Visualization: Create custom visualizations and automate your data analysis tasks.: 9 hours

LinkedIn Learning