код, с которым я имею дело, имеет следующие петли:
bistar = zeros(numdims,numcases);
parfor hh=1:nt
bistar = bistar + A(:,:,hh)*data(:,:,hh+1)' ;
end
для малых nt (10).
После определения времени, это на самом деле в 100 раз медленнее, чем при использовании регулярного цикла!!! Я знаю, что parfor может делать параллельные суммы, поэтому я не уверен, почему это не работает.
Я запустил
matlabpool
с готовыми конфигурациями перед запуском моего кода.
Я относительно новичок в Matlab и просто начал использовать параллельные функции, поэтому, пожалуйста, не предполагайте, что я не делаю что-то глупое.
Спасибо!
PS: Я запускаю код на четырехъядерном ядре, поэтому я ожидаю увидеть некоторые улучшения.