MATLAB的性能

MATLAB代码的优化性能

MATLAB是快,越来越快

MATLAB®执行引擎、引入R2015a使用JIT编译加速所有MATLAB代码。JIT编译生成本机代码水平优化的MATLAB代码和特定的硬件。执行引擎的体系结构允许进一步优化每一个版本,包括更快的调用内置函数和索引操作。此外,许多核心MATLAB函数隐式多线程更好的性能。

MATLAB性能是衡量使用一组基准测试,包括单元操作和完成代表真实用户工作流的应用程序。多次运行这些标准在MATLAB的发布周期在不同的硬件和操作系统来验证新的优化,检测和处理性能回归,并识别操作系统具体问题。

您可以了解特定的性能改进的MATLAB版本说明。MATLAB R2019b以来,性能版本注释包括测量改善执行时间比以前的MATLAB版本。


客户的平均加速工作流

MATLAB的平均加速性能测试套件。

MATLAB分析器

在代码中使用MATLAB分析器来识别瓶颈。

提高MATLAB代码的性能

提高代码的性能的第一步是识别瓶颈。例如,您可以:

  • 测量代码执行时间等功能抽搐,toc,时间
  • 使用MATLAB程序分析器,看看哪部分需要很长时间
  • 使用MATLAB代码分析器为额外的建议来提高性能

一旦你确定瓶颈在代码,编程实践通常可以使代码更快。两种最常用的技术是数组预先配置和向量化。预先配置避免了动态内存分配,可以提高性能。向量化使您能够避免循环操作在一个向量的所有元素在一个单一的命令。在一起,这些技术可以加速代码由几个数量级。

如果有必要,你可以提高性能通过编写应用程序的计算要求部分编译语言。在MATLAB中,墨西哥人函数允许您调用高性能的C, c++,或者Fortran代码就像MATLAB内置函数。用MATLAB编码器™,可以自动将MATLAB代码转换为墨西哥人文件,这可能跑得更快。


使用并行计算利用更多的硬件

你可以解决计算或数据密集型问题通过使用并行计算显式地访问所有你的硬件资源。您可以利用功能扩展到多个进程,多个线程,gpu与MATLAB的熟悉和易用性。你可以开发和运行在一个单独的机器,你可以扩展云计算集群或执行而无需重新编码。


使用并行计算显式地使用你所有的硬件资源。