for loop in parfor

3 views (last 30 days)
Mohamed
Mohamed on 17 Jun 2011
Edited: Niels on 6 Mar 2015
I want to use a for-loop inside parfor, is it possible? If not what is the alternative?
Thanks,

Accepted Answer

Edric Ellis
Edric Ellis on 17 Jun 2011
Yes, it's possible. For example,
parfor ii=1:10
for jj=1:10
x(ii,jj) = rand
end
end
Note that this example is so computationally trivial that it is much slower than a serial version.
  6 Comments
Edric Ellis
Edric Ellis on 2 Jul 2012
@Benoit - which version are you running? The ability to recognise 'x' as a sliced variable was added relatively recently.
@Walter - matlabpool workers (either local workers with PCT or cluster workers with MDCS) have no visible graphics of their own. However, they can generate off-screen graphics and call 'print' to files.
Niels
Niels on 6 Mar 2015
Edited: Niels on 6 Mar 2015
Hi Edric, I am trying to run a slightly modified script:
a = linspace(0,10);
parfor ii=1:10
for jj=1:length(a)
x(ii,jj) = rand;
end
end
However, Matlab complains about the x variable classification. But I don't quite understand, why it shouldn't work. Any ideas? Thanks in advance, Niels.

Sign in to comment.

More Answers (0)

Categories

Find more on Parallel for-Loops (parfor) in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!