内存使用情况

减少RAM,ROM,和堆栈空间通过生成的C / C ++代码中使用

确定如何修改MATLAB®代码,使所生成的代码使用更少的内存。当调用的功能,控制数据如何通过使用用于输入和输出相同的变量传递。通过引用传递减少了在所生成的代码中使用的存储器。控制存储器如何通过设定为堆栈空间的使用限制,并通过在使用动态存储器分配指定分配。通过禁用生成额外的代码的功能,如对整数溢出最小化支持代码大小。万博1manbetx

有关如何优化您的具体情况代码的详细信息,请参阅优化策略

功能

coder.inline 控制在生成的代码内联
coder.const 折入表达式中的常数生成的代码
coder.ceval 调用外部C / C ++函数

coder.Constant 代表组包含一个MATLAB
coder.ExternalDependency 接口外部代码

示例以及如何

条件语句

防止代码生成未使用的执行路径

使控制流可变恒定,以防止代码生成未使用的分支。

函数调用

避免功能的输入的数据副本中生成的代码

生成通过引用传递输入参数的代码。

内嵌代码

通过与函数体替换函数调用内联消除了函数调用的开销。

控制内联

限制内联,以减少产生的代码和内存使用情况的大小。

控制堆栈空间的使用

指定最大堆栈空间所生成的代码可以使用。

折叠功能调用到常量

通过在所生成的代码以恒定的替换表达式减少执行时间。

数组

设置动态内存分配阈值

对于阵列禁用动态存储器分配小于一定的尺寸。

再利用大数组和结构

指定变量复用,以减少内存使用。

数值边缘情况

整数溢出或Non万博1manbetxfinites禁用支持

提高通过抑制支承代码来处理整数溢出或nonfinites发电性能。万博1manbetx

自定义代码集成

集成外部/自定义代码

通过整合你自己的优化代码,提高性能。

加快线性代数中生成的独立代码利用LAPACK电话

产生一定的线性代数函数调用LAPACK。指定LAPACK库来使用。

加快矩阵运算所产生独立代码利用BLAS电话

产生某些低级别的矩阵运算BLAS电话。指定BLAS库使用。

加快快速利用FFTW库调用傅立叶变换所产生独立代码

产生快速傅立叶变换FFTW库的调用。指定FFTW库。

概念

优化策略

优化执行速度或所生成的代码的内存使用情况。

从生成的代码不包括未使用的路径

使控制流可变恒定,以防止产生的代码为未使用的分支。

堆栈分配方案与性能

分配大的变量堆上,当你有有限的堆栈空间。

MATLAB编码器优化生成的代码

为了提高生成代码的性能,代码生成器使用的优化。

整数溢出或Non万博1manbetxfinites禁用支持

提高通过抑制支承代码来处理整数溢出或nonfinites发电性能。万博1manbetx

代码生成稀疏矩阵

使用稀疏的MATLAB代码矩阵用于代码生成。