Parallel computing with solving linear system of equations

조회 수: 9 (최근 30일)
Diab Abueidda
Diab Abueidda 2019년 1월 29일
댓글: Diab Abueidda 2019년 2월 5일
Hi MATLAB community,
I am interested in solving two very large linear systems of equations. I am using two iterative schemes, pcg and bicgstab. Is there a way to solve the two systems in a parallel fashion? I have 24 cores, and I would like to make use of them.
Thanks
Diab
  댓글 수: 2
Walter Roberson
Walter Roberson 2019년 1월 29일
spmd or parfeval() if you have Parallel Computing Toolbox.
But make sure to adjust maxNumCompThreads so that each of the workers can access more than one core.
Diab Abueidda
Diab Abueidda 2019년 1월 29일
편집: Diab Abueidda 2019년 1월 29일
Thanks Walter for the answer! yes, I have the parallel computing toolbox.
May you sketch the implementation? Let's say that I am interested in solving Ku=f.

댓글을 달려면 로그인하십시오.

채택된 답변

Walter Roberson
Walter Roberson 2019년 1월 29일
parpool(2)
spmd
maxNumCompThreads(12);
if labindex == 1
do first computation
else
do second computation
end
end
  댓글 수: 19
Walter Roberson
Walter Roberson 2019년 2월 3일
The fastest... sometimes that involves reducing own to fewer cores, as adding too many cores can be adding communications overhead without enough performance gain to balance. Start with a smaller array and do some timing to determine how performance changes with the number of cores.
Secondly, especially if you can get away with single precision calculations, then switching to GPU can sometimes give much much better performance. But I would not count on it for sparse arrays.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Parallel Computing Fundamentals에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by