This section discusses the requirements and configurations for your network to support parallel computing.
Generally, it is easy to decide which machines will run worker processes and which will run client processes. Worker sessions usually run on the cluster of machines dedicated to that purpose. The MATLAB® client session usually runs where MATLAB programs are run, often on a user's desktop.
The job manager process should run on a stable machine, with adequate resources to manage the number of tasks and amount of data expected in your parallel computing applications.
The following table shows what products and processes are needed for each of these roles in the parallel computing configuration.
Session | Product | Processes |
---|---|---|
Client | Parallel Computing Toolbox™ | MATLAB with toolbox |
Worker | MATLAB Distributed Computing Server™ | worker; mdce service (if using a job manager) |
Job manager | MATLAB Distributed Computing Server | mdce service; job manager |
The server software includes the mdce service or daemon. The mdce service is separate from the worker and job manager processes, and it must be running on all machines that run job manager sessions or workers that are registered with a job manager. (The mdce service is not used with third-party schedulers.)
You can install both toolbox and server software on the same machine, so that one machine can run both client and server sessions.
To view the network requirements for MATLAB Distributed Computing Server software, visit the product requirements page on the MathWorks Web site at
MATLAB Distributed Computing Server software and Parallel Computing Toolbox software
support both short host names and fully qualified domain names. The
default usage is short host names. If your network requires fully
qualified host names, you can use the mdce_def
file
to identify the worker nodes by their full names. See Customize Startup Parameters. To set the
host name used for a MATLAB client session, see the pctconfig
reference page.
The parallel computing products do not provide any security measures. Therefore, be aware of the following security considerations:
MATLAB workers run as whatever user the administrator
starts the node's mdce service under. By default, the mdce
service starts as root
on UNIX® operating systems,
and as LocalSystem
on Microsoft® Windows® operating
systems. Because MATLAB provides system calls, users can submit
jobs that execute shell commands.
The mdce service does not enforce any access control or authentication. Anyone with local or remote access to the mdce services can start and stop their workers and job managers, and query for their status.
The job manager does not restrict access to the cluster, nor to job and task data. Using a third-party scheduler instead of the MathWorks® job manager could allow you to take advantage of the security measures it provides.
The parallel computing processes must all be on the same side of a firewall, or you must take measures to enable them to communicate with each other through the firewall. Workers running tasks of the same communicating job cannot be firewalled off from each other, because their MPI-based communication will not work.
If certain ports are restricted, you can specify the ports used for parallel computing. See Define Script Defaults.
If your organization is a member of the Internet Multicast Backbone (MBone), make sure that your parallel computing cluster is isolated from MBone access if you are using multicast for parallel computing. Isolation is generally the default condition. If you have any questions about MBone membership, contact your network administrator.