我在matlab中有一個長期運行的模擬程序,它定期更新數字。我希望能夠繼續在不同的Linux桌面上工作,但是我發現,如果我不在它正在使用的桌面上,matlab會慢慢爬行。我認爲這與它對渲染成不可見的圖形或其他東西感到不快。有沒有其他人看到這個,或者更好的解決方案?我知道我可以在沒有這些數字的情況下跑動,但我真的想要偶爾檢查一下,看看這些數字以查看狀態。Matlab在不同的linux桌面上運行時會變慢
0
A
回答
0
我在帶顯示器的網絡服務器上運行matlab。這些是我發現的一些事情,在速度方面顯示圖形,與matlab交互等方面的差異。
我不運行matlab與桌面顯示。所以,我用這個命令來運行MATLAB:
/apps/matlab/R2008b/bin/matlab -nosplash -nodesktop
沒有一個MATLAB屏互動與花了一點時間來適應的。但是,現在我已經習慣了它,我發現我可以更快地使用matlab(即僅從命令行運行命令)。我仍然可以顯示圖形(一個-nodisplay
調用將停止),並且事情似乎運行得很快。
我還會確保你完成清理工作。我不確定,但我期望如果你不斷地在一個數字上作圖,會造成一些內存泄漏。你說你有一個長時間運行的模擬。我懷疑每次繪圖後關閉這個數字可能會有所幫助。就像這樣:
for ii = 1:10
figure(1337);
plot(x,y)
drawnow
close(1337)
end
另一種選擇是不帶顯示器(-nodisplay
)運行,並在圖中的每個更新打印文件。
for ii = 1:10
figure(1337);
set(1337,'visible','off')
plot(x,y)
drawnow
print(1337,'-dpng',filename.png);
close(1337)
end
然後,使用圖像編輯程序在每次更新時顯示輸出圖像。 例如,
eog filename.png
(你很可能也寫的是自動打開的圖像,每次圖像更新一個整潔的小shell腳本。)