MATLAB Parallel Server

Perform MATLAB and Simulink computations on clusters and clouds

MATLAB Parallel Server™ lets you scale MATLAB® programs and Simulink® simulations to clusters and clouds. You can prototype your programs and simulations on the desktop and then run them on clusters and clouds without recoding. MATLAB Parallel Server supports batch jobs, interactive parallel computations, and distributed computations with large matrices.

All cluster-side licensing is handled by MATLAB Parallel Server. Your desktop license profile is dynamically enabled on the cluster, so you do not need to supply MATLAB licenses for the cluster. The licensing model includes features to support unlimited scaling.

MATLAB Parallel Server runs your programs and simulations as scheduled applications on your cluster. You can use the MATLAB optimized scheduler provided with MATLAB Parallel Server or your own scheduler. A plugin framework enables direct communication with popular cluster scheduler submission clients.

Prior to R2019a, MATLAB Parallel Server was called MATLAB Distributed Computing Server.

Get Started:

Write Code Once, and Use It in Multiple Environments

Prototype and debug applications on the desktop with Parallel Computing Toolbox™, and easily scale to clusters or clouds without recoding. Develop interactively and move to production with batch workflows.

Run on Multiple Machines Without Algorithm Changes

Develop a prototype on your desktop, and scale to a compute cluster without recoding. Access different execution environments from your desktop just by changing your cluster profile.

Execute iterations in parallel and get results faster.

Access CPUs and GPUs on Centralized Resources

Take advantage of high-end hardware in your organization’s cluster without leaving the MATLAB desktop environment.

Adding cluster profiles to MATLAB to allow access to available cluster resources. 

Scale Up Computations

Run compute-intensive MATLAB applications and Simulink models on compute clusters and clouds. MATLAB Parallel Server supports batch processing, parallel applications, GPU computing, and distributed memory.

Automate Management of Multiple Simulink Simulations

Easily set up multiple runs and parameter sweeps, manage model dependencies and build folders, and transfer base workspace variables to cluster processes. Use the Simulation Manager user interface to visualize and manage multiple runs of Simulink models on a cluster.

Monitor multiple simulations in one window.

Process Big Data from Windows, Mac, or Linux

Use the same MATLAB analytics on small or large volumes of data. From your Windows®, Mac®, or Linux® desktop, you can process big data on Spark™ enabled Hadoop® clusters or on traditional clusters with standard file systems.

Use tall arrays and datastores to analyze large data sets.

Overcome Memory Barriers

Execute calculations that won’t fit in the memory of a single machine without needing to recode your algorithm or use a shared-memory architecture.

Distributed arrays allow you to execute calculations with data that is too big for the memory of a single computer.

Manage Any Size Cluster with a Single License

End users are automatically licensed on the cluster for the products they use on the desktop. The cluster requires only a MATLAB Parallel Server license.

Use Your Desktop Toolboxes on the Cluster

MATLAB Parallel Server is the only license required on the cluster. Dynamic licensing enables each user’s specific desktop license profile on the cluster. 

Run all your licensed desktop products on the cluster with just the MATLAB Parallel Server license.

Use Your Existing Hardware and Infrastructure

Create a cluster from a few dedicated machines and manage jobs with MATLAB Job Scheduler, or integrate with your existing cluster and manage jobs with your third-party scheduler. Users can manage their jobs without leaving MATLAB.

Execute on CPUs and GPUs on multiple compute nodes.

Scale Applications to the Cloud

Integrate with public and private clouds. Access specialized and more powerful hardware in the cloud. Use preconfigured options from both MathWorks and MathWorks hosting providers, or build the infrastructure yourself.  

There are multiple options for scaling parallel computing to clusters in the cloud.

See MATLAB Parallel Server in Action

Latest Features

Common Job Schedulers Performance

Improved performance of vectorized task creation for local and third-party schedulers

Improved Scalability

MATLAB Parallel Server with the MATLAB Job Scheduler now supports clusters up to 2000 workers; support for large parallel pools remains at 1024 workers

Personal Cloud Clusters

Set Cloud Center clusters for personal use

Batch Jobs Documentation

Explore batch workflows with new examples such as Run Batch Job and Access Files from Workers

Distributed Array Functionality

Use new and enhanced distributed array functionality, such as decomposition, mink, maxk, topkrows, and more

NVIDIA CUDA Toolkit 10.1 Support

Update to NVIDIA CUDA Toolkit 10.1

gpuArray Data Loading on CPU

Load gpuArray data on CPU, when no GPU is present

Enhanced GPU Functionality for Sparse

Use new and enhanced gpuArray functions, such as sparse diag, sparse trace, and others

mexcuda Enhancement

Compile mexcuda functions without installing the CUDA toolkit

See release notes for details on any of these features and corresponding functions.

Get a Free Trial

30 days of exploration at your fingertips.

Download now

Ready to Buy?

Get pricing information and explore related products.

Are You a Student?

Get MATLAB and Simulink student software.

Learn more