MATLAB (matrix laboratory) is a numerical computing environment and fourth-generation programming language. 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, including C, C++, and Fortran. An additional package, Simulink, adds graphical multi-domain simulation and Model-Based Design for dynamic and embedded systems.
MATLAB can be used on personal computers and powerful server systems, including the Cheaha compute cluster. With the addition of the Parallel Computing Toolbox, the language can be extended with parallel implementations for common computational functions, including for-loop unrolling. Additionally this toolbox supports offloading computationally intensive workloads to Cheaha the campus compute cluster.
In January 2011, UAB acquired a site license for MATLAB that allows faculty, staff, post-docs, and graduate students to use MATLAB, Simulink, and 42 toolboxes (including the parallel toolbox) for research activities on campus and personal systems. Additionally, MATLAB is available to students on campus computer systems.
Using Mathworks software available under the UAB campus license on your computer involves download and install steps common to all software packages and an authorization step that grants you the rights to use the software under the campus agreement. While straight forward, there are several authorization scenarios designed to support a variety of user communities. In an effort to simplify the software installation and get you working with MATLAB as quickly as possible, we detail three authorization scenarios to help you decide the best installation for your needs.
MATLAB on Your Desktop
To get matlab follow the instructions below or email firstname.lastname@example.org if you need assistance. Put 'matlab' in the subject line.
NOTE:These steps are common to all install scenarios and are detailed in Downloading and Installing MATLAB.
- Create an account at the Mathworks site using your campus @uab.edu email address if you do not have one already.
- Request an activation key.
- Associate to the campus-wide license using your activation key.
- Download the software from mathworks download site and install.
- Activate the software using the activation scenario that best suits your particular needs.
We are working to simplify these steps and will update this documentation as improvements are introduced.
Installation for Various Activation Scenarios
NOTE: Most on-campus users are encouraged to use the Simplified MATLAB Install option for activation unless there are special circumstances.
- Simplified MATLAB Install - This is the recommended install when MATLAB will be used on computers that remain connected to the campus network. This installation still requires MATLAB to be downloaded and installed, but provides a simple activation process that amounts to adding a static 2-line file after the software is installed your computer. This option is highly recommend.
- Matlab Designated Computer Install - This is the recommended install for mobile computing systems that may not be connected to any network when MATLAB is being used. This install type authorizes an individual computer to run MATLAB, allowing MATLAB to run regardless of where the computer is located.
- Matlab Network Concurrent User Install - This installation is only recommended for system administrators who already manage a lab or departmental installation of MATLAB and who would like to continue to provide this service for their user community. This install type may also be practical if there are special additional license needs that will apply multiply computers running MATLAB. At present, all MATLAB toolboxes actively used at UAB are covered under the UAB TAH license.
MATLAB is a self-supported application at UAB. A UAB MATLAB users peer support community is accessible via UAB MATLAB user community forum described below in MATLAB Support.
MATLAB on Cheaha
MATLAB is pre-installed on the Cheaha research computing system. This allows users to run MATLAB directly on the cluster without any need to install software. MATLAB jobs can also be submitted to Cheaha directly from your desktop, however, this requires additional configuration on your desktop.
Integration with Desktop MATLAB
Accessing the additional compute power of Cheaha from your desktop MATLAB install is recommended for most users because it combines the familiar MATLAB user experience with the computing power of the cluster. However, additional steps are required to configure a desktop MATLAB installation to access worker nodes on the Cheaha cluster via the Distributed Computing Server (DCS) platform. Please see MatLab DCS for configuration information.
Using Batch Submit from the Desktop Instead of matlabpool Jobs
It is not possible to use matlabpool jobs on the cluster from the desktop. Instead, desktop MATLAB users should use the batch submit options described in the MatLab DCS configuration to submit their jobs to the cluster.
Direct Use on the Cluster
Using MATLAB directly on the cluster is recommended only for people comfortable accessing systems via a command line environment (eg. secure shell SSH). The SSH environment can support X Windows sessions for displaying a full graphical MATLAB development environment on client desktops with an X Windows server installed, included with Linux and OSX systems by default. For more information on using MATLAB in this environment please see MatLab CLI. Matlabpool jobs are possible when running MATLAB directly on the cluster.
On-line Tutorials and Learning Resources
- Getting Started
- Recorded Webinars, select a topic and complete the request form.
- Interactive Tutorials for Students and Faculty
- Example Code, News, Blogs, Teaching Materials
UAB does not have a campus-wide user support service for MATLAB. Users are requested to work with their normal IT support personnel for issues with installation and use.
In order to facilitate interaction among MATLAB users, share experience, and provide peer-support UAB IT Research Computing has established a MATLAB-users group. To join this group and participate in email discussions please subscribe to the matlab-users group. On-line archives of these discussions are available here. Please note, the email discussions are a public forum. You are advised to only post information you are authorized to share and comfortable with being public.
UAB Mathworks Site License
UAB has acquired a university wide site license for MATLAB and Simulink software. This license includes all Mathworks Inc. products in use at UAB, with the exception of the Distributed Computing Server (DCS) which must be licensed separately. This new site license also makes available several new toolboxes and blocksets not previously licensed by UAB.
This site license is known as the Mathworks Inc. Total Academic Headcount (TAH) license or Mathworks TAH. Mathworks TAH will make it easier for everyone in the UAB community to use MATLAB, MATLAB Toolboxes (extensions) and Simulink software. Specifically, it authorizes use of MATLAB on university owned machines for all faculty, staff and students. Faculty and staff are also entitled to install the software on personally owned computers.
The TAH allows unlimited use MATLAB, Simlink and the 42 MATLAB Toolboxes in both research and teaching activities. Faculty and staff can install the software on computers located off-campus, however, students may only use Mathworks software on UAB owned computers computers located on-campus.
UAB was the first university in Alabama to implement a Mathworks TAH license.
Parallel Computing Extensions
MATLAB language extensions to support parallel processing are available via the Parallel Computing Toolbox. This is one of the 42 toolboxes available under the UAB TAH license. The Parallel Computing Toolbox enables MATLAB to make use of the multi-core processors found on many computers in order to speed the execution of code sections that can execute in parallel. This toolbox supports the use of up to 8 cores on a single computer systems through the use of worker threads the spread the execution of code across multiple cores.
Additional parallelism can be supported by adding more worker threads via a secondary software platform known as the Distributed Computing Server (DCS). The DCS runs on a compute cluster and can provide many more worker threads to increase parallelism. UAB IT Research Computing has licensed a 128 worker DCS installation for the Cheaha compute cluster. The Parallel Computing Toolbox can be configured to access this license from desktop MATLAB installations. Please see MatLab DCS for configuration details.