Parallel Computing Fundamentals

Parallel computing can help you to solve big computing problems in different ways. MATLAB ® and Parallel Computing Toolbox™ provide an interactive programming environment to help tackle your computing tasks. If your code runs too slowly, you can profile it, vectorize it, and use built-in MATLAB parallel computing support. Then you can try to accelerate your code by using parfor on multiple MATLAB workers in a parallel pool. If you have big data, you can scale up using distributed arrays or datastore . You can also execute a task without waiting for it to complete, using parfeval , so that you can carry on with other tasks. You can use different types of hardware to solve your parallel computing problems, including desktop computers, GPUs, clusters, and clouds. To get started, see Quick Start Parallel Computing in MATLAB.

Functions

Key functions in Parallel Computing Toolbox

parfor Execute for -loop iterations in parallel on workers
parfeval Run function on parallel pool worker
gpuArray Array stored on GPU
distributed Create and access elements of distributed arrays from client
batch Run MATLAB script or function on worker
parpool Create parallel pool on cluster
ticBytes Start counting bytes transferred within parallel pool
tocBytes Read how many bytes have been transferred since calling ticBytes
delete (Pool) Shut down parallel pool

Topics

Basics

Learn More

Featured Examples

Illustrating Three Approaches to GPU Computing: The Mandelbrot Set

Illustrating Three Approaches to GPU Computing: The Mandelbrot Set

Adapt your MATLAB® code to compute the Mandelbrot Set using a GPU.

Use parfor to Speed Up Monte-Carlo Code

Use parfor to Speed Up Monte-Carlo Code

Speed up Monte-Carlo code by using parfor-loops. Monte-Carlo methods are found in many fields, including physics, mathematics, biology, and finance. Monte-Carlo methods involve executing a function many times with randomly distributed inputs. With Parallel Computing Toolbox, you can replace a for-loop with a parfor-loop to easily speed up code.