Table of Contents
MATLAB是矩阵操作和数值计算的一个强大工具,使用高效技术可以显著改善性能,缩短计算时间,此文章为优化MATLAB的矩阵处理提供了实用提示.
预分配矩阵
在填充矩阵为循环之前进行优先配置,可以防止 MATLAB 多次重排数组,从而延缓执行。使用诸如 , 或 等函数来预先分配内存。
使用内建函数
MATLAB的内置功能被优化用于性能. 只要可能,就用诸如(]],(]]]]或[]等功能来替换手动执行,这些功能往往比自定义代码更快,更准确.
向外传播操作
用矢量化操作取代循环可以大大提高速度. MATLAB被优化用于矩阵和矢量计算,因此建议重写代码,以使用矩阵操作而不是迭代循环.
优化内存使用
最小化临时变量, 避免不必要的复制大型矩阵。 已不需要使用 [[FLT: 8] 的清晰变量来释放内存, 并改善性能 。
附加提示
- 使用稀疏的矩阵来获取大数据,大多为零数据.
- 利用逻辑索引来高效选择数据。
- 在可能向量化时避免使用循环.
- 配置代码为],以识别瓶颈.