文档

执行速度

提高生成代码的执行速度

方法将全局变量替换为局部变量,删除数据副本,从而提高所生成代码的执行速度memset而且memcpy函数,并减少用于存储数据的内存量。您可以通过实现特定于编译器和处理器的优化、指定缓冲区重用以及删除可能不需要的代码来提高所生成代码的执行速度。

主题

特定处理器的优化

通过插入语法在内存中放置控制数据和函数

通过在生成的代码中插入语法来提高硬件上的代码效率。Pragmas在内存中指定存储数据和函数的位置。

将布尔值替换为特定整数数据类型

方法来提高生成代码的执行速度布尔具有特定整数数据类型的内置数据类型。

非正常号码执行速度

尽量减少由于非正常的数字计算延迟而导致的执行放缓或溢出的可能性。

浮点乘法处理净斜率修正

对于支持高效乘法的处理器,可以使用浮点乘金宝app法来处理净斜率修正,从而提高代码效率。

使用Simulink®、Stateflow®和MATLAB®使用定点数据优化生成的代码金宝app

在Simulink中生成定点代码金宝app®, Stateflow®,以及MATLAB®

在算法代码中生成目标优化

使用特定于目标的优化自定义生成的算法代码。

硬件实现参数设置

指定在嵌入式系统开发中可能非常关键的目标硬件设备特征(例如字符int,数据类型,或整数操作中所需的舍入行为)。

特定编译器优化

控制编译器优化

在Simulink UI级别控制makefile的编译器优化。金宝app

提高执行效率的优化

优化全局变量的使用

选择全局变量引用优化来满足您的内存使用和执行速度要求。

通过重新排序生成代码中的块操作来提高执行效率

代码生成器可以改变块的执行顺序,提高执行效率。

通过组合多个结构优化生成的代码

代码生成器使用数据依赖分析进行组合构造以减少静态代码大小和运行时分支。

优化复杂信号的生成代码

代码生成器对所生成代码中表示信号的结构执行各种优化。

配置环路展开阈值

从默认值5开始,代码生成器开始使用循环而不是单独的语句来为信号或参数数组的元素赋值。

简化数组索引中的乘法操作

代码生成器通过用临时变量替换乘法操作来减少在数组索引中执行乘法操作的次数。

使用memset函数优化生成的代码

memset函数将内部存储清除为整数位模式0(即所有位都关闭),无论类型如何。

使用memcpy函数优化生成的向量赋值代码

代码生成器通过替换来优化生成的代码循环与memcpy函数调用。

使用条件输入分支执行

开关而且多端口切换块,Simuli金宝appnk只执行计算控制输入和控制输入选择的数据输入的块。

为定点数据操作优化生成代码

代码生成器通过用高效的乘积运算替换昂贵的除法运算来优化定点运算。

MATLAB函数块中可变大小数组的控制内存分配

禁用动态内存分配或指定动态内存分配阈值MATLAB函数块。

用MATLAB函数块生成的代码加速线性代数

在MATLAB函数块中生成LAPACK调用某些线性代数函数。指定要使用的LAPACK库。

加速由MATLAB函数块生成的代码中的矩阵运算

为某些低级矩阵操作生成BLAS调用。指定要使用的BLAS库。

加速从MATLAB函数块生成的代码中的快速傅立叶变换

生成FFTW库调用快速傅立叶变换MATLAB函数块。指定FFTW库。

在MATLAB函数块生成的代码中同步多线程FFTW规划

实现FFT库回调类方法,并提供支持的C代码,以防止对FFTW规划的并发访问。金宝app

在使用parfor生成的代码中加速for循环实现

在生成的代码中实现并行for循环MATLAB函数而且MATLAB系统使用parfor阻塞。

特色的例子