Main Content


Parallel for-loop



parfor loopvar = initval:endval,, statements; end executes a series of MATLAB® statements for values of loopvar between initval and endval, inclusive, which specify a vector of increasing integer values. The loop runs in parallel when you have Parallel Computing Toolbox™ or when you create a MEX function or standalone code with MATLAB Coder™. Unlike a traditional for-loop, iterations are not executed in a guaranteed order. You cannot call scripts directly in a parfor-loop. However, you can call functions that call scripts.

parfor (loopvar = initval:endval, M); statements; end executes statements in a loop using a maximum of M workers or threads, where M is a nonnegative integer.


collapse all

Perform three large eigenvalue computations using three workers or cores with Parallel Computing Toolbox:

parfor i=1:3, 
    c(:,i) = eig(rand(1000)); 


  • If you have Parallel Computing Toolbox, see for parfor (Parallel Computing Toolbox) and parpool (Parallel Computing Toolbox) for additional information.

  • If you have MATLAB Coder, see parfor (MATLAB Coder) for additional information.

Extended Capabilities

Version History

Introduced in R2008a

See Also