當運行在Matlab下面的代碼,MATLAB的物理內存的使用增加,直到其達到90%我的系統內存,並崩潰該程序。這個代碼是更大的優化方案的一部分,將會有更多的迭代,但這裏已經簡化了。如何減少Matlab中的物理內存增加?
import org.parent.modeling.*
for i = 1:100
rTool = Tool('C:/etc');
model = rTool.getModel();
model.initSystem();
rTool.setModel(model);
rTool.run();
end
rTool
和模型作爲Java對象存儲在工作區中。 通過有選擇地從底部到頂部去除步驟,我確定rTool.run()
;步驟會導致每次迭代過程中增加的內存增加。 我一直利用各種記憶清除技術,但沒有成功
clear classes, clear java, clear rTool model, clear all
我已經運行memory
命令檢查碎片嘗試,但它是微不足道的。 下面是對應於API文檔(https://simtk.org/api_docs/opensim/api_docs/classOpenSim_1_1RRATool.html)
for i = 1:1:4
import org.opensim.modeling.*
rraTool = RRATool('C:\...filename.xml');
model = rraTool.getModel();
model.initSystem();
rraTool.setModel(model);
rraTool.run();
end
用於減小物理內存增加任何建議的實際代碼?
Matlab的:2013
哪裏可以找到'Tool' API文檔?或'org.parent.modeling。*'? – 2013-04-06 04:52:35
https://simtk.org/api_docs/opensim/api_docs/classOpenSim_1_1RRATool.html 原始代碼是通用的。我添加了上面的實際代碼。 – hblue 2013-04-06 04:59:12
您鏈接的API文檔是C++而不是Java。你爲什麼用Java標記這個? – 2013-04-06 05:07:21