1. 程式人生 > >Matlab提速方法

Matlab提速方法

操作 AR 網上 快的 數據 函數 運算 error double

1. 向量化。

盡量少用for循環。

2. 循環豎著走比橫著走快。

3. 內置函數也有優化的空間

不少內置函數都有大量的error check。直接用profiler找出真正幹活的。
不少內置函數在網上都有人提供了更快的版本的,當然功能弱一些,正好符合提速的需求。

4. 盡量給不要修改函數的變量

利用copy on write的特點,丟進函數的變量能不對其修改就不要修改。

5. 少使用Matlab進行類似數據庫的操作

matlab就是個高級計算器,不要拿幹來處理文件,往數據庫裏塞數據這種活。eval, object之類的東西能別碰就別碰,盡量保持著every is an array of double的模式。

6. 預先規定好矩陣的維度

和C語言一個道理,修改矩陣的維度會使Matlab分配一個新的內存空間來存儲新的矩陣並進行賦值操作。頻繁地改變size就會使運算變慢。

7. 當矩陣中有很多0時,使用sparse(稀疏矩陣)

也就是軟基中的三元矩陣?

8. 多次使用的除法數據存儲下來

因為除法的開銷比乘法的大許多。

Matlab提速方法