Why is parfor-loop is much slower than for-loop in this case?
조회 수: 4 (최근 30일)
이전 댓글 표시
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
채택된 답변
Image Analyst
2023년 3월 25일
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.
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Parallel for-Loops (parfor)에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!