Hundreds of functions in MATLAB® and other toolboxes can run on thread workers if you create a
thread-backed pool using
parpool("threads"); parfor i = 1:100 A(i) = max(eig(rand(3))); end
You can improve some parallel workflows by using thread workers instead of process workers. For more information about choosing between the two, see Choose Between Thread-Based and Process-Based Environments.
For a filtered list of MATLAB functions that are fully supported on thread workers, see Functions Supported on Thread Workers.
parallel.pool.PollableDataQueue are fully supported on a
supported, subject to the following limitations.
A thread-based parallel pool does not have an associated cluster object.
afterAll are not
FevalQueue is not supported.
Tall arrays do not support
write and support only
tabular text and in-memory inputs.
Other parallel language functionality, including
distributed is not supported.
The following core MATLAB functionality is supported on a thread worker.
In general, functionality that modifies or accesses things outside of the thread worker is not supported, including the following core MATLAB functionality.
Functionality in External Language Interfaces.
Functionality that interacts directly with the file system or MATLAB environment.
is supported on a thread worker except for the following image formats.
Flexible Image Transport System (FTS, FITS)
Hierarchical Data Format (HDF)
JPEG 2000 (J2C, J2K, JP2, JPF, JPX)
SVS, TIF, TIFF
gpuArray is supported on a thread worker.