※ 引述《irene019 (不要冷天氣><)》之銘言:
: 請問...
: 當matlab出現out of memory 時,
: 可以clear variable處理...
: 但...clear variable是指
: 把矩陣中的行列減少嗎??
clear 某些沒用到的變數
最近小弟剛好有遇到類似的問題,提供一些意見,有錯誤請指正
在32位元的windows作業系統下,matlab記憶體使用上限是2GB
扣掉程式本身啟動後DLL以及其他函式,可用的記憶體大約有1.5G~1.7G
1. 調高虛擬記憶體大小
2. 使用nojvm模式可以多增加一些記憶體, ex: matlab捷徑按右鍵->內容 ,
把引號內的代號貼到目標欄最後面, " -nojvm" ,儲存後執行便可使用nojvm模式
3. matlab 6.5.1有patch檔可以下載,可增加記憶體使用量
http://www.mathworks.com/support/solutions/files/s37705/patch.zip
4. 對於已知dimension的矩陣,可先建立零矩陣,
以確保不會因contiguous block不夠大而產生的 out of memory
ex: zeros(m,n)
5. 關閉matlab時,打quit會釋放matlab所佔去的所有記憶體
6. matlab 7系列的可以使用 feature('memstats') 知道目前記憶體使用情況,
如果用 feature('dumpmem') 可能會更詳細...
至於有聽聞7系列在win xp下的記憶體使用量可以多一些 (1G ?),
目前還沒試出來,所以也不知道,知情的網友麻煩提供一下資訊
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.115.223.93