Why is parfor-loop is much slower than for-loop in this case?
1 view (last 30 days)
Show older comments
I just started to explore the pros and cons of parfor-loop. In the simpy testing codes below, parfor-loop is much slower than for-loop. I don't understand why. Any feedbacks are appreciated. (My project is to process a large number of tables and collect the parsing data into a huge long table.)
for loop
(In my 8-core Mac, the elapsed time is in the order of 0.004 seconds.)
C = cell(2,1);
tic
for i = 1:2
A = rand(1,10);
T = array2table(A);
C{i} = T;
end
toc
parfor-loop
(In my 8-core Mac, the elapsed time is in the order of 0.03 seconds.)
D = cell(2,1);
tic
parfor i = 1:2
A = rand(1,10);
T = array2table(A);
D{i} = T;
end
toc
0 Comments
Accepted Answer
Image Analyst
on 25 Mar 2023
There is some setup time required to set up the different CPUs. If you have only 2 iterations and are using such tiny variables like you are, it's usually/mostly not worth it. Try with much larger variables and millions of loop iterations and see if it's better.
More Answers (0)
See Also
Categories
Find more on Matrix Indexing 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!