主要内容

设置动态内存分配阈值

默认情况下,代码生成器对可变大小数组使用动态内存分配。动态内存分配优化可变大小数组的存储要求,但会导致生成代码的执行速度变慢。为了平衡内存和性能要求,您可以对小于特定大小的数组禁用动态内存分配。

当您要执行以下操作时,请指定此阈值:

  • 对较小的数组禁用动态内存分配。对于较小的数组,静态内存分配可以加快所生成代码的执行速度。静态内存分配会导致未使用的存储空间。但是,对于较小的数组,未使用的存储空间可能不是重要考虑因素,具体由您决定。

  • 对较大的数组启用动态内存分配。对于较大的数组,使用动态内存分配可以显著降低存储要求。

要指定动态内存分配阈值,必须启用动态内存分配。要确保启用动态内存分配,请使用以下方法之一:

  • 在代码配置对象中,确保 EnableDynamicMemoryAllocation 属性设置为 true

  • 在“代码生成设置”对话框中,确保启用动态内存分配复选框处于选中状态。

如果启用了动态内存分配,请使用以下方法之一设置动态内存分配阈值:

  • 在代码配置对象中,为 DynamicMemoryAllocationThreshold 属性指定值。

  • 在“代码生成设置”对话框中,为动态内存分配阈值参数指定值。

动态内存分配阈值以字节为单位。根据来自目标硬件设置的信息,代码生成会估计配置的阈值可以容纳的数组的大小。此估计未考虑可能的 C 编译器优化,如将变量放入寄存器中。

另请参阅

主题