Matlab is an pen OnDemand app that launches Matlab as an interactive session on a compute node. Matlab is a computing platform that is used for engineering and scientific applications like data analysis, signal and image processing, control systems, wireless communications, and robotics.
For how to create a Sandbox app, see the Developing your own app using Open OnDemand documentation.
Note
This section is intended for sys-admins, developers, and power users.
Matlab is an Open OnDemand Batch Connect app that launches Matlab as an interactive desktop session on HPC clusters. It is designed for researchers who need data Matlab is a computing platform that is used for engineering and scientific applications like data analysis, signal and image processing, control systems, wireless communications, and robotics.
This app uses the Batch Connect turbovnc template with Slurm and software
OpenGL rendering.
- Upstream project: MATLAB
- Batch Connect template:
turbovnc - Scheduler: Slurm
- Launches MATLAB desktop GUI in a TurboVNC session with Xfce window manager
- Multiple MATLAB versions (R2021a, R2022b, R2024b, R2025b) via
matlab/module - Supports CPU and GPU execution
- Configurable memory, CPU cores, GPU count, and wall time
- Lmod module-based
- Software OpenGL rendering (
-softwareopenglflag) - Optional extra modules loading (comma-separated list)
- Optional additional Slurm options pass-through (long format)
- Optional reservation support for priority scheduling
- Optional email notification on job start
- OOM score management to prevent proxy errors on out-of-memory conditions
- Matlab Lmod module and Matlab license
- Xfce Desktop 4+
- Slurm job scheduler
- Lmod
6.0.1+ or any other
module purgeandmodule load <modules>based CLI used to load appropriate environments within the batch job
- TurboVNC 2.1+
- websockify 0.8.0+
- Open OnDemand v3.0+
- Slurm job scheduler
- Lmod
6.0.1+ or any other
module purgeandmodule load <modules>based CLI used to load appropriate environments within the batch job
Please see the References section below for instructions on how to install the software that is launched by this App.
# Batch Connect apps:
cd /var/www/ood/apps/sys
git clone https://github.com/fasrc/ood-matlab.git
cd ood-matlab
# Pin to a release (recommended)
git checkout v1.0.0Edit form.yml and update these values for your cluster:
| Attribute | Description | FASRC settings | Change to |
|---|---|---|---|
cluster |
Target cluster ID | odyssey |
Your cluster name |
bc_num_hours |
Maximum wall time (HH:MM:SS) | user-defined; default: 04:00:00 |
Your preferred default time |
bc_num_cores |
Number of cores | user-defined; default 1 |
Your preferred default number of cores |
bc_queue |
Default scheduler partition | user-defined; default: shared |
Your preferred partition |
extra_slurm |
Extra slurm option (long-format) | user-defined | Remove if using aother scheduler |
custom_num_gpus |
Number of GPUs | user-defined; default 0 |
Your preferred default number of GPUs |
memory |
Memory per job (GB) | user-defined; default: 8 |
Your preferredmemory allocation |
matlab_version |
Matlab module to load on compute node | Multiple versions; e.g. matlab/R2025b-fasrc01 |
Your matlab module |
Edit manifest.yml and update these values for your organization:
| Attribute | Change to |
|---|---|
description |
Your cluster and your documentation |
No OOD restart is needed (Batch Connect apps are detected automatically). Visit your OOD dashboard and look for Matlab under Interactive Apps > Desktop Apps.
- Check the job's
output.login~/ondemand/data/sys/YOUR-APP/ - Verify the module loads correctly:
module load software/1.0 - For VNC apps, verify the window manager is installed:
which xfwm4
The module name in form.yml doesn't match your system. Run module spider software to find the correct name and update the modules attribute.
The app may need more time to start. Increase the connection timeout or check that the compute node can open the required port.
| Site | Operating System* | OOD Version | Scheduler | Status |
|---|---|---|---|---|
| FASRC | Rocky 8.10 | 3.1 | Slurm 25.11 | Tested |
| FASRC | Rocky 8.10 | 4.0 | Slurm 25.11 | Tested |
Note
*Operating system of compute nodes
To verify your installation:
- Launch the app from the OOD dashboard with default settings
- Confirm the application loads in the browser
- Multi-node jobs are not supported
- Only tested on Centos 7 and Rocky 8; may not work on Ubuntu.
Contributions are welcome. To contribute:
- Fork this repository.
- Create a feature branch (
git checkout -b feature/my-improvement). - Submit a pull request with a description of your changes.
For bugs or feature requests, open an issue.
This app is part of the OOD Appverse. Join the Appverse Affinity Group to connect with other contributors.
- MATLAB — the application launched by this OOD app.
- Open OnDemand — the HPC portal framework.
This work is supported by FASRC at Harvard Univesity.
