Parallel computing (parsim) run out of memory during Simulink simulation

조회 수: 1 (최근 30일)
Dmitriy Ogureckiy
Dmitriy Ogureckiy 2023년 1월 10일
편집: Walter Roberson 2023년 1월 10일
When I simulate my Simulink model memory (RAM) fully occupied by Parallel Toolbox. I tryed delete Cluste, but it didn't help. First simulation work good, but next simulation take all free memory.
What I should do for solving this?
% 3) Create an array of SimulationInput objects and specify
% the values for each simulation
simIn(1:numSims) = Simulink.SimulationInput(model);
for idx = 1:numSims
simIn(idx) = simIn(idx).setBlockParameter(...
[model '/Motor hip aa fr/Control/Position controller'],'P',num2str(Kpp_table(idx)), ...
[model '/Motor hip aa fr/Control/Position controller'],'D',num2str(Kdp_table(idx)), ...
[model '/Motor hip aa fr/Control/Position controller'],'I',num2str(Kip_table(idx)),...
[model '/Motor hip aa fr/Control/Speed controller'],'P',num2str(Kpw_table(idx)), ...
[model '/Motor hip aa fr/Control/Speed controller'],'D',num2str(Kdw_table(idx)), ...
[model '/Motor hip aa fr/Control/Speed controller'],'I',num2str(Kiw_table(idx)),...
[model '/Motor hip aa fr/Control/BLDC Current Controller'],'Kp',num2str(Kpi_table(idx)), ...
[model '/Motor hip aa fr/Control/BLDC Current Controller'],'Kaw',num2str(Kdi_table(idx)), ...
[model '/Motor hip aa fr/Control/BLDC Current Controller'],'Ki',num2str(Kii_table(idx)) );
end
simOut = parsim(simIn,'TransferBaseWorkspaceVariables','on');
myCluster = parcluster('local');
delete(myCluster.Jobs)
f1=[];
for idx = 1:numSims
y = simOut(1, idx).simout.y;
f_compute_9opt_parallel
f1(idx)=f;
end

답변 (0개)

카테고리

Help CenterFile Exchange에서 Programmatic Model Editing에 대해 자세히 알아보기

태그

제품


릴리스

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by