2015-09-09 5 views
0

У меня вопрос относительно использования parfor в Matlab: должно ли количество параллельных работников быть пропорциональным числу итераций в цикле?Соотношение числа итераций/параллельных работников в Matlab

+1

Этот вопрос немного широк, поскольку он показывает, что вы не поняли, почему вы хотите использовать parfor и каковы пределы этого подхода. Давать вам ответ потребует объяснения общих аспектов параллельной обработки в Matlab и в целом, и это больше для небольшой книги, чем для ответа SO, IMHO. –

ответ

3

No.

Matlab разделит ваш parfor петлю в пути, чтобы убедиться, что все рабочие работают аналогичным образом. Не беспокойтесь об этом, вы можете легко parfor 1:100 и использовать 6 ядер.

Чтобы расширить немного, Matlab фактически отправит разные куски различным работникам. Больше в начале, меньше в конце. Поэтому в начале Matlab отправит, например, 10 для итераций каждому работнику, и когда они закончат, он отправит 5, 3 ... 1 для цикла каждому из них (я только что придумал числа).

Смежные вопросы