Parallel Computing Toolbox

Tutorials on Parallel and GPU Computing with MATLAB

Parallel Computing Toolbox™ helps you take advantage of multicore computers and GPUs. The videos and code examples included below are intended to familiarize you with the basics of the toolbox. They can help show how to scale up to large computing resources such as clusters and the cloud. (Scaling up requires access to MATLAB Distributed Computing Server™.) Links associated with each video direct you to more detailed information about the topic.

An interactive parallel computing training course is also available to help you gain the knowledge needed to become a more effective MATLAB® user. You will learn to work with large data sets, improve performance, and speed up computations in MATLAB through presentations and hands-on exercises. Learn more about our hands-on training courses.

Total Completion Time Approx. 2 hours
Products Needed Parallel Computing Toolbox (Required)
MATLAB Distributed Computing Server (Optional; Required only for Scaling to Clusters and Cloud)
MATLAB Release MATLAB R2014a

Product Landscape

Topics Covered Additional Resources
  • Products required for parallel computing with MATLAB
  • Examples of problems suitable for parallel computing
  • MATLAB and Simulink products with parallel functions

Prerequisites and Set Up

Topics Covered Additional Resources
  • Hardware and software requirements for tutorials

Quick Success with parfor

Topics Covered Additional Resources
Download code
  • An introductory parfor example

Deeper Insights into Using parfor

Topics Covered Additional Resources
Download code
  • Tips for converting for-loops to parfor loops
  • Factors governing the speedup of parfor loops

Batch Processing

Topics Covered Additional Resources
Download code
  • Offloading serial and parallel programs using batch command
  • Using the Job Monitor

Scaling to Clusters and Cloud

Topics Covered Additional Resources
Download code
  • Using desktop resources versus using a cluster
  • Cluster profiles (MATLAB Job Scheduler and others)
  • Updating code for running on a cluster

spmd: Parallel Code Beyond parfor

Topics Covered Additional Resources
Download code
  • Executing code simultaneously on workers
  • Accessing data on worker workspaces
  • Exchanging data between workers

Distributed Arrays

Topics Covered Additional Resources
Download code
  • Constructing and working with distributed arrays

GPU Computing with MATLAB

Topics Covered Additional Resources
Download code
  • Transferring data to GPUs
  • Processing data within GPUs
  • Using looping constructs: arrayfun and pagefun
  • Executing NVIDIA® CUDA™ code from MATLAB
  • Performance considerations

Download free trial of Parallel Computing Toolbox

Get trial software