Переменное потребление связи в параллельных вычислениях Matlab - PullRequest
0 голосов
/ 08 января 2019

Вот мои коды:

cell1 = cell(5,1);
parfor idx=1:numel(cell1)
    a = cell1{idx};
end

где ячейка1 с сообщением, как показано ниже: The whole array of struct is a broadcast variable. This may cost unnecessary communication overhead.

Я не могу понять объяснение:

Объяснение

Указанная переменная появляется внутри цикла parfor в разных выражениях индексации. Потому что индексы несовместимо с использованием массива, созданного циклом Parfor, MATLAB отправляет весь массив каждому работнику, что приводит к большим объемам данных накладные расходы на связь. Например, следующий код вызывает это сообщение для c, потому что есть два различных выражения индексации за это ...

Доставляет ли MATLAB всю клетку каждому работнику в параллельном пуле?

Могу ли я нарезать камеру и самому отправить ее рабочим?

...