Main Content

执行加速

自定义编译过程

默认情况下,编译器优化处于关闭状态。这样可以加快编译时间,但会减慢仿真时间。您可以优化编译过程以实现更快的仿真。

  1. 建模选项卡上的设置下,点击模型设置

  2. 在“配置参数”对话框中,从编译器优化级别下拉列表中选择打开优化(运行速度更快)

    启用此选项之后,代码生成需要的时间会增加,但仿真的速度会更快。

  3. 选择详尽的加速编译可以显示使用代码生成的进度信息,并查看使用的编译器选项。

更改生成代码的位置

默认情况下,加速模式将生成的代码放在工作文件夹下称为 slprj/accel/模型名称的子文件夹中(例如 slprj/accel/f14)。要更改加速模式写入生成代码的文件夹的名称,请执行以下操作:

  1. 在 Simulink® 编辑器窗口中,在建模选项卡上,选择环境 > Simulink 预设项

  2. 在“Simulink 预设项”窗口中,导航到仿真缓存文件夹参数。

  3. 输入您的子文件夹的绝对或相对路径,然后点击应用

从用户界面运行加速模式

要加速模型,请首先打开它,然后在仿真选项卡的仿真部分,从下拉列表中选择加速快速加速。然后开始仿真。

以下示例说明如何使用加速模式加速已经打开的 f14 模型:

  1. 仿真选项卡的仿真部分,从下拉列表中选择加速

  2. 仿真选项卡上,点击运行

    加速和快速加速模式首先检查以前是否为您的模型编译过代码。如果以前创建过代码,加速或快速加速模式将运行模型。如果以前未编译过代码,将首先生成并编译 C 代码,然后再运行模型。

    有关这些模式为何重新构建模型的说明,请参阅Code Regeneration in Accelerated Models

加速模式将生成的代码放在工作文件夹下称为 slprj/accel/模型名称的子文件夹中(例如 slprj/accel/f14)。要更改此路径,请参阅更改生成代码的位置

快速加速模式将生成的代码放在工作文件夹下称为 slprj/raccel/模型名称的子文件夹中(例如 slprj/raccel/f14)。

注意

当您的模型在加速或快速加速模式下运行时,不会显示模块在仿真过程中生成的警告(例如,除以零和整数溢出)。

进行运行时更改

加速和快速加速模式有一个特点,即在仿真运行时可对模型进行简单的调整(例如,更改 GainConstant 模块的值)。在仿真运行时,不允许进行更复杂的更改(例如,从 sin 函数更改为 tan 函数)。

如果您尝试进行不允许的更改,Simulink 软件会发出警告。不发出警告即表示更改是可以接受的。警告不会停止当前仿真,而是使用以前的值继续仿真。如果您要以运行时不允许的方式更改模型,必须先停止仿真、进行更改,然后重新启动仿真。

一般情况下,简单的模型更改在快速加速模式下比在加速模式下更有可能重新生成代码。

在各次运行之间切换求解器

您可以在各次运行之间切换变步长求解器,Simulink 将根据模型的数学结构(例如模型是常微分方程 (ODE) 还是微分代数方程 (DAE) 模型,求解器是否需要雅可比矩阵,它是否处理质量矩阵,或模型是否包含速率限制器模块),自动确定求解器的更改是否会触发重新编译。

相关主题