Main Content

本页的翻译已过时。点击此处可查看最新英文版本。

性能和内存

探查代码、提高性能、减少内存需求

以简单、易读的方式编写您的代码,特别是对于第一次实现。过早优化的代码可能带来无谓的复杂性,而不会显著改善性能。然后,如果速度不佳,您可以测量代码运行所需的时间并探查代码的瓶颈所在。如有必要,您可以分步执行来提高性能。

MATLAB® 会自动处理数据存储。但是,如果内存是问题所在,您可以确定内存需求并应用技术来更有效地使用内存。

函数

全部展开

tic启动秒表计时器
toc从秒表读取已用时间
cputimeMATLAB 使用的 CPU 时间
timeit测量运行函数所需的时间
profile探查函数的执行时间
benchMATLAB 基准
memory内存信息
inmem内存中的函数、MEX 文件、类的名称
pack合并工作区内存
memoize向函数句柄添加储存语义
MemoizedFunction调用储存的函数并缓存结果
clearAllMemoizedCaches清除所有 MemoizedFunction 对象的缓存

主题

测量和探查代码

衡量代码的性能

使用 timeit 函数或秒表计时器函数 tictoc 来计算代码运行所需的时间。

探查您的代码以改善性能

使用探查器来测量运行代码所需的时间,并确定哪些代码行最耗时或哪些代码行未运行。

使用探查器确定代码覆盖率

要确定探查文件时 MATLAB 执行了该文件的多大范围,请运行覆盖范围报告。

改善性能

提升性能的方法

要提升代码的性能,您可以考虑多种方法。

确定和降低内存要求

MATLAB 如何分配内存

通过了解 MATLAB 如何分配内存,编写更高效使用内存的代码。

高效使用内存的策略

减少程序中的内存使用,使用适当的数据存储,避免内存碎片化以及回收使用的内存。

避免不必要的数据副本

MATLAB 可以在通过值传递函数输入时应用内存优化。

解决“内存不足”错误

每当 MATLAB 从操作系统请求的内存段大于可用内存时,它就会返回一个错误。