1
提高
matlab
运行速度的方法
1.
多用矩阵运算少用
for
和
while
循环
1.1
原因分析
关于这个问题,我目前认为可能的原因有两种。一种是
matlab
矩阵运算可
能是并行进行的,二是
maltab
矩阵运算可能采用了一些目前我还不清楚的优化
算法。但到底是什么原因,还有待考证。
1.2
效果分析
(
1
)矩阵加法
A,
B,
C
分别是
5000
5000
的矩阵,对
D
A
B
C
,对比结果如下
for
循环执行的速度:
Elapsed time is 20.791048 seconds.
矩阵运算执行的速度
:
Elapsed time is 0.597691 seconds.
2.
为矩阵预分配内存而不是动态分配
2.1
原因分析
在动态分配的过程中,由于开始
Matlab
所用的
Block
随着矩阵的增大而连
续的为此矩阵分配内存,但是由于
B