Назначения сокращений или reductions являются исключением из правила, согласно которому итерации цикла должны быть независимыми. reduction variable накапливает значение, которое зависит от всех итераций цикла вместе, но не зависит от порядка итерации. Список поддерживаемых переменных сокращения см. в разделе Переменные сокращения.
Одно и то же назначение сокращения можно выполнить несколько раз в parfor
-цикл при условии, что каждый раз используется один и совпадающий тип данных.
Для примера, следующими parfor
-цикл, u(i)
и v(i)
должен быть того же типа.
parfor i = 1:10; X = X + u(i); X = X + v(i); end
Аналогично, следующий пример действителен при условии, что u(i)
и v(i)
имеют один и тот же тип.
parfor i=1:10 r = foo(r,u(i)); r = foo(r,v(i)); end