User`s guide
6 Programming Overview
6-2
How Parallel Computing Products Run a Job
In this section...
“Overview” on page 6-2
“Toolbox and Server Components” on page 6-3
“Life Cycle of a Job” on page 6-7
Overview
Parallel Computing Toolbox and MATLAB Distributed Computing Server software let
you solve computationally and data-intensive problems using MATLAB and Simulink
on multicore and multiprocessor computers. 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
at a high level in MATLAB without programming for specific hardware and network
architectures.
A job is some large operation that you need to perform in your MATLAB session. Ajob
is broken down into segments called tasks. You decide how best to divide your job into
tasks. You could divide your job into identical tasks, but tasks do not have to be identical.
The MATLAB session in which the job and its tasks are defined is called the client
session. Often, this is on the machine where you program MATLAB. The client uses
Parallel Computing Toolbox software to perform the definition of jobs and tasks and to
run them on a cluster local to your machine. MATLAB Distributed Computing Server
software is the product that performs the execution of your job on a cluster of machines.
The MATLAB job scheduler (MJS) is the process that coordinates the execution of jobs
and the evaluation of their tasks. The MJS distributes the tasks for evaluation to the
server's individual MATLAB sessions called workers. Use of the MJS to access a cluster
is optional; the distribution of tasks to cluster workers can also be performed by a third-
party scheduler, such as Microsoft
®
Windows
®
HPC Server (including CCS) or Platform
LSF
®
.
See the Glossary for definitions of the parallel computing terms used in this manual.