主要内容

自定义栈空间分配

您的应用程序可能会受到有限的记忆。控制堆栈的最大容许大小修改是否数据的一种方法是定义为本地或全球在生成的代码中。你可以限制使用的堆栈空间通过指定一个正整数的值最大堆栈大小(字节)参数,优化面板的配置参数对话框。指定最大允许堆栈大小提供了本地和全局变量的数量控制生成的代码。具体来说,降低全球最大堆栈大小可能会产生更多的变量结构。本地和全局变量的数量有助于确定所需数量的堆栈空间生成的代码的执行。

如果你的模型包含一个变量大于4096字节,代码生成器实现默认全局内存。你可以增加大小的变量,代码生成器的地方在本地内存通过改变TLC变量的值MaxStackVariableSize。你可以改变这个值通过键入下面的命令在MATLAB®命令窗口:

set_param (modelName TLCOptions, -aMaxStackVariableSize = N)

默认设置为最大堆栈大小(字节)继承的目标。在这种情况下,价值的最大堆栈大小较小的值:默认值设定的代码生成器(200000字节)或TLC变量的值MaxStackSize发现系统中目标文件(ert.tlc)。

为应用程序指定一个较小的堆栈大小,选择指定一个值选择的最大堆栈大小(字节)参数和输入一个正整数的值。在命令行上指定一个较小的堆栈大小,使用:

set_param (model_name,‘MaxStackSize’, 65000);

请注意

整体可执行堆栈的使用数据时,您可能想要做一个有针对性的测量,比如使用运行时(经验)分析或静态分析对象代码(代码路径)。

建议您使用最大堆栈大小(字节)参数控制堆栈空间分配,而不是修改TLC变量,MaxStackSize系统中,目标文件。然而,作者可能希望设置TLC目标变量,MaxStackSize为一个目标。设置MaxStackSize,使用分配报表系统中的目标文件(ert.tlc),如以下示例。

%分配MaxStackSize = 4096

写你的%分配语句的环球套票代码生成配置设置部分系统的目标文件。的%分配声明中描述目标语言编译器

另请参阅

相关的话题