Main Content
Parallel for-Loops (parfor
)
Use parallel processing by running
parfor
on workers in a parallel pool Parallel Computing Toolbox™ supports interactive parallel computing and enables you to accelerate your workflow by running on multiple workers in a parallel pool. Use parfor
to execute for
-loop iterations in parallel on workers in a parallel pool. When you have profiled your code and identified slow for
-loops, try parfor
to increase your throughput. Develop parfor
-loops on your desktop and scale up to a cluster without changing your code.
Functions
Topics
Getting Started with parfor
- Decide When to Use parfor
Discover basic concepts of aparfor
-loop, and decide when to use it. - Convert for-Loops Into parfor-Loops
Diagnose and fix commonparfor
problems. - Ensure That parfor-Loop Iterations are Independent
Unlike afor
-loop,parfor
-loop Iterations have no guaranteed order. - Nested parfor and for-Loops and Other parfor Requirements
Learn how to deal with parallel nested loops. - Troubleshoot Variables in parfor-Loops
Discover variable requirements and classification inparfor
-loops.
Running parfor
-Loops
- Interactively Run Loops in Parallel Using parfor
Convert afor
-loop into a scalableparfor
-loop. - Improve parfor Performance
Create arrays inside or outsideparfor
-loops to speed up code. - Run Code on Parallel Pools
Learn about starting and stopping parallel pools, pool size, and cluster selection. - Specify Your Parallel Preferences
Specify your preferences, and automatically create a parallel pool. - Use Objects and Handles in parfor-Loops
Discover how to use objects, handles, and sliced variables inparfor
-loops. - Ensure Transparency in parfor-Loops or spmd Statements
All references to variables inparfor
-loops must be visible in the body of the program. - Save Variables in parfor-Loops
This example shows how to use thesave
function in aparfor
-loop to save one or more variables to a file. (Since R2024a) - Scale Up parfor-Loops to Cluster and Cloud
Developparfor
-loops on your desktop, and scale up to a cluster without changing your code. - Use parfor-Loops for Reduction Assignments
You can useparfor
-loops to calculate cumulative values that are updated by each iteration. - Repeat Random Numbers in parfor-Loops
Control random number generation inparfor
-loops by assigning a particular substream for each iteration. - Use parfor to Speed Up Monte-Carlo Code
This example shows how to speed up Monte-Carlo code by usingparfor
-loops. - Interactively Import and Process Data in Parallel
This example shows how to import and process data simultaneously in an interactive parallel pool. (Since R2023b)
Deep Learning
- Use parfor to Train Multiple Deep Learning Networks (Deep Learning Toolbox)
This example shows how to use aparfor
loop to perform a parameter sweep on a training option.