Сотни функций в MATLAB® и других тулбоксах могут работать на рабочих потока, если вы создаете поддержанное потоком использование пула parpool
.
parpool("threads"); parfor i = 1:100 A(i) = max(eig(rand(3))); end
ThreadPool
.
Совет
Можно улучшить некоторые параллельные рабочие процессы при помощи рабочих потока вместо рабочих процесса. Для получения дополнительной информации о выборе между этими двумя, смотрите, Выбирают Between Thread-Based и Process-Based Environments.
Для отфильтрованного списка функций MATLAB, которые полностью поддерживаются на рабочих потока, смотрите Функции, Поддерживаемые на Рабочих Потока.
parallel.pool.DataQueue
и parallel.pool.PollableDataQueue
полностью поддерживаются на рабочем потока.
parpool
, parfor
, parfeval
, parfevalOnAll
, tall
, и parallel.pool.Constant
поддерживаются согласно нижеследующим ограничениям.
Основанный на потоке параллельный пул не имеет связанного кластерного объекта.
afterEach
и afterAll
не поддерживаются.
FevalQueue
не поддерживается.
Длинные массивы не поддерживают write
и поддержите только табличный текст и входные параметры в оперативной памяти.
Другая функциональность языка параллельного программирования, включая spmd
и distributed
не поддерживается.
Следующая базовая функциональность MATLAB поддерживается на рабочем потока.
Функциональность в Основах языка за исключением функциональности во Вводе команд.
Функциональность в Математике кроме любых функций, которые строят фигуре.
Функциональность в Функциях, Классах и всей функциональности, связанной с попыткой, выгодой и MException
.
В общем случае функциональность, которая изменяет или вещи доступов за пределами рабочего потока, не поддерживается, включая следующую базовую функциональность MATLAB.
Функциональность в Импорте и анализе данных за исключением функциональности в Длинных массивах, Предварительно обрабатывая Данные, Описательную статистику, imageDatastore
и imread
.
Функциональность в графике и App Building.
Функциональность во внешних интерфейсах языка.
Функциональность, которая взаимодействует непосредственно со средой MATLAB или файловой системой.
Весь imageDatastore
и imread
функциональность поддерживается на рабочем потока за исключением следующих форматов изображения.
Гибкая система передачи изображения (FTS, FITS)
Иерархический формат данных (HDF)
JPEG 2000 (J2C, J2K, JP2, JPF, JPX)
SVS, TIF, TIFF
gpuArray
поддерживается на рабочем потока.