labview記憶體問題

我有多筆資料需要分析,要抓其中的峰值

資料大小約有40MB左右

同樣的資料經過我的程式

從開啟程式算起..第1.3.5...次跑出來的資料都會是正確的

但2.4.6..次跑出來的資料都是錯誤..或是零

也就是對一次錯一次,開啟程式後執行的第一次一定對...或是更改程式後的那一次也會對...

懷疑是labview記憶體的問題

不知道有沒有什麼可以釋放記憶體的方法呢?

以下是我之前試失敗的方法:

1.把部分程式碼換成subvi,並在subvi中加入request deallocation,結果沒用= =

2.每次跑完把圖表跟array都設為num,結果也沒用..

請問各位有什麼方法可以解決這方面的問題嗎?

基本上,我不認為這是因為記憶體的問題導致你的計算錯誤。

如果是記憶體的問題,頂多會造成執行效率低落,不會有計算錯誤的情況。而且你說這個計算錯誤是有規律性的,也就是每2,4,6...次,會計算錯誤。如果是記憶體不足造成計算錯誤,那麼不會有規律的情況。

比較有可能的原因是你的程式寫法有錯誤。

所以如果針對計算錯誤的問題,我認為你應該重新檢查你的程式,才能解決。

對於記憶體的問題,在LabVIEW的文件中,並沒有提到如何釋放記憶體,但是有提到如何減少記憶體的使用,相關的資料你可以參考ni.com的官方資料,有很多資料:

 

但我跑10M以下的資料..不管跑幾次都沒有問題...

且每次執行完成以後

再次執行程式都應該會重新計算...

如果是程式計算錯誤的問題

那第一次或是程式關掉重開為什麼會跑對呢?

謝謝

zephyrfan38899.5103819444

何不改變programming or File I/O的方式. 控制檔案不大於10MB.

LabVIEW本來就不擅長處理大量的資料. 避開它的缺點比較實際.