System Requirements

Product Requirements

  • Requires Parallel Computing Toolbox on user desktop; MATLAB Distributed Computing Server is installed on cluster computers.
  • Certain products are ineligible for use with MATLAB Distributed Computing Server. See the list.

Cluster Computers Running MATLAB Workers (All Schedulers)

  • A shared file system between user desktops and cluster is strongly recommended. Availability of a shared file system is assumed by default for all the built-in configurations. An API is available to extend these configurations for environments with nonshared file systems.
  • Maximum of 1 MATLAB worker per CPU core is recommended.
  • Minimum of 2 GB RAM per MATLAB worker is recommended. If you are using Simulink, 4GB RAM per worker is recommended.
  • Approximately 10GB of disk space to accommodate a typical complete installation of MATLAB Distributed Computing Server.
  • Minimum of 5 GB of disk space is recommended to accommodate temporary data directories.
  • Several TCP ports are required by MATLAB workers for various worker services and for inter-worker communication.
  • For interactive parallel computations, MATLAB workers running on cluster computers must be able to connect to MATLAB session running on user desktop via TCP. This is not required for running applications in batch.
  • Homogeneous cluster configurations are recommended. Parallel processing constructs that work on the infrastructure enabled by parpool—parfor, spmd, distributed arrays, and message passing functions—cannot be used on a heterogeneous cluster configuration. The underlying MPI infrastructure requires that all cluster computers have matching word sizes and processor endianness. A limited set of functions in Parallel Computing Toolbox can work in heterogeneous cluster configurations.

Clusters Using Third-Party Schedulers

  • See the list of supported schedulers. Consult your scheduler documentation for details. Most schedulers require client utilities to be installed on the computer that submits jobs to the cluster.

Clusters Using MathWorks Job Manager as the Scheduler

Computer running MathWorks job manager (head node)
  • Minimum of 5 GB of disk space is recommended to accommodate temporary data directories.
  • Sufficient number of per-process file descriptors is required: a minimum of 16,384 is recommended for 64 MATLAB workers or more, and a minimum of 8,192 is recommended for fewer than 64 workers.
  • Several TCP ports are required for services associated with the job manager. Consult the documentation for the requirements for TCP ports.
  • For Windows clusters, a sufficient number of ephemeral TCP ports is required to support large data set transfer, particularly for clusters with 32 or more workers. You can increase the default maximum number of ephemeral TCP ports set by Windows (5,000) by editing the Windows registry. For detailed instructions, see the Troubleshooting section in the documentation.
Computers running MATLAB workers
  • Access to GPU functionality from a MATLAB worker running on a Microsoft Windows operating system with a job manager as the scheduler requires an NVIDIA Tesla Compute Cluster (TCC) driver with an NVIDIA Tesla card.
  • Presence of DNS or equivalent service that allows MATLAB workers and job manager processes to uniquely identify each other by hostname. For example, if a computer identifies itself as "computer1" then other computers must be able to resolve the name "computer1."
  • The hostname for every node on the cluster must be bound to an IP address that matches an address on one of the host's network interface cards (NICs). Distributed computing processes will work correctly on machines with multiple NICs. See Technical Solution 1-1Z2DHH for instructions to determine if your configuration is correct.

Connecting a Desktop Computer (Client Machine) to MATLAB Distributed Computing Server Running on the Amazon EC2 Cloud

  • The client machine must be able to make outgoing connections to any DNS name in the domain and in on port 443 (https) or have a properly configured SSL capable proxy server that can contact those domains.

  • The client machine must be able to make outgoing connections to the cluster machines in the domain directly on a set of specific ports. These ports differ by MATLAB release and by whether the cluster was started with Cloud Center or from a custom installation. The required ports are summarized in a table below. In the table, N is the maximum number of workers on a single node.

    Note that ability to "make outgoing connections" means that the client machine must be able to instantiate a socket to the cluster, which at a TCP level means that the initial SYN packet for the TCP/IP communication comes from the client. Most NAT and general firewalls allow this type of communication, but if you have more stringent rules, you may need to enable such outgoing communication.

    Release Method of starting cluster Required ports Example of ports required when N=8
    R2016b and earlier Cloud Center 27355 and 14350 to 14351 + 4*N 27355 and 14350 to 14383
    R2016b and earlier Custom installation 27350 to 27355 and 14350 to 14351 + 4*N 27350 to 27355 and 14350 to 14383
    R2017a and later Cloud Center 27355 to 27357 + 3*N 27355 to 27381
    R2017a and later Custom installation 27350 to 27357 + 3*N 27350 to 27381
  • The client and the cluster running in the cloud should be connected via "always connected" TCP communications. Should a network device between the client computer and the cluster reset the TCP stream, then any open interactive parpool sessions will be shut down.

  • The Cloud Center should be configured to allow connections from your computer's external IP address. In most local networks, policies in place mean that the public Internet address of the computer, as seen from other places on the Internet, differs from the local address.
    Contact your administrator or visit to determine the public Internet address of your computer.


General System Requirements for

Product Version Availability

MATLAB Distributed Computing Server is available on the following platforms:

Operating SystemProduct Version
Linux (32-bit)6.0
Linux (64-bit)6.0
Mac OS X (Intel 64-bit)6.0
Windows (32-bit)6.0
Windows (64-bit)6.0

See a full list of available products for: