GitHub - mathworks-ref-arch/matlab-parallel-server-on-azure: Stand up a MATLAB Parallel Server cluster using Azure Deployment (original) (raw)

MATLAB Parallel Server on Microsoft Azure

This repository helps you automate the process of deploying MATLAB® Parallel Server™ and MATLAB Job Scheduler using your Azure® account.

Use this repository to deploy a compute cluster using compute, storage, and network resources hosted by Azure. The cloud resources are created using Azure Resource Manager (ARM) templates. For information about the architecture of this solution, see Learn About Cluster Architecture.

Requirements

Before starting, you need the following:

Costs

You are responsible for the cost of the Azure services you use when you create cloud resources using this repository. Resource settings, such as virtual machine (VM) type, affect the cost of deployment. For cost estimates, see the pricing pages for each Azure service you use. Prices are subject to change.

Deployment Steps

To view instructions for deploying the MATLAB Parallel Server reference architecture, select a MATLAB release.

Linux Windows
R2025a R2025a
R2024b R2024b
R2024a R2024a
R2023b R2023b
R2023a R2023a
R2022b R2022b
R2022a R2022a
R2021b
R2021a
R2020b
R2020a
R2019b
R2019a_and_older

Learn About Cluster Architecture

This diagram illustrates the cluster architecture created by the template. When you use the Azure Resource Manager template in this repository, it automatically creates the MATLAB Job Scheduler and necessary resources. For more information about each resource, see the Azure template reference.

Cluster Architecture

Figure 1: Cluster Architecture

The following resources are created.

Networking Resources

Compute Resources

Storage Resources

Configure Azure Account

To enable autoscaling or auto-termination for your cluster, you must have the following permissions:

To check if you have these permissions, see Check access for a user to Azure resources.

If you do not have these permissions, the administrator or owners of the subscription can either:

  1. Assign you the built-in Azure role User Access Administrator in addition to your existing role. see Assign Azure roles using the Azure portal.
  2. Create a custom role containing these permissions and attach it along with your existing role. see Create or update Azure custom roles using the Azure portal.

FAQ

What can I do with MATLAB Parallel Server?

Parallel Computing Toolbox and MATLAB Parallel Server let you solve computationally and data-intensive programs using MATLAB and Simulink on computer clusters, clouds, and grids. Parallel processing constructs such as parallel for-loops and code blocks, distributed arrays, parallel numerical algorithms, and message-passing functions let you implement task-parallel and data-parallel algorithms in MATLAB. For more information, see the Parallel Computing Toolbox and MATLAB Parallel Server documentation.

What is MATLAB Job Scheduler?

MATLAB Job Scheduler is a scheduler that ships with MATLAB Parallel Server. The scheduler coordinates the execution of jobs and distributes the tasks for evaluation to the server’s individual MATLAB sessions called workers. For more details, see How Parallel Computing Toolbox Runs a Job. The MATLAB Job Scheduler and the resources required by it are created using Azure Resource Manager templates.

What is Microsoft Azure?

Microsoft Azure is a set of cloud services that allow you to build, deploy, and manage applications hosted in Microsoft’s global network of data centers. For more information about the range of services offered by Microsoft Azure, see Azure Services. Services deployed in Azure can be created, managed, and deleted using the Azure Portal UI. For more information about the Azure Portal, see Azure Portal.

What skills or specializations do I need to use this reference architecture?

No programming or cloud experience required.

How long does it take to deploy the reference architecture?

If you already have an Azure account set up and ready to use, you can start a MATLAB Parallel Server reference architecture cluster in less than 15 minutes. Startup time varies depending on the size of your cluster.

How do I manage limits for Azure services?

For information about setting quotas, see Azure subscription and service limits.

What is an Azure Spot Virtual Machine, and what factors should I consider before enabling it?

Spot Virtual Machines allow you to use Azure VMs at a reduced cost. Azure uses Spot Virtual Machines to sell unused instances within their data centers. However, Azure can reclaim these virtual machines at any time. For more details, see the Azure documentation on Spot Virtual Machines.

Before enabling Spot Virtual Machines, consider these aspects:

For more information about the limitations of using Spot Virtual Machines, see Azure Spot Virtual Machines for Virtual Machine Scale Sets.

Technical Support

If you need help or have a request for additional features or capabilities, contact MathWorks Technical Support.


Copyright 2018-2025 The MathWorks, Inc.