How can i save the temporary variable inside the parfor loop for the below code ? i have also tried using SPMD but it takes more time that the normal problem running in one core takes and how will i be able to find the thread number of each worker ?
4 次查看(过去 30 天)
显示 更早的评论
i wanted to save the temp variable 'temp' and i cant find any way to do it..i would appreciate any help thank you
C is 300x52 matrix,D is 6x300 matrix, k is a 6x300 matrix,N is 50 and offs is 3,
parfor n=1:6
temp=[];
A=zeros(300,(N+offs) +N);
for m=1:N+offs
A(1:300,m)=k.*C(1:300,m);
end
inda=N+offs;
for m=1:N
A(1:300,inda+m)=-k.*C(1:300,m).*D(n,1:300).';
end
temp=A\B;
end %for n=1:Nc
0 个评论
回答(1 个)
Namnendra
2022-6-19
As seen in the code, you have 6 instances of temp to be saved. You can create a structure which is outside the parfor loop and assign its size to be n(=6). So you can assign that particular temp at the corresponding index of n in the structure. You can later retrieve the value of temp from the structure.
I hope it helps.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Loops and Conditional Statements 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!