AVL Cruise限制内存占用的方法|Cruise在Win32 Platform下的内存优化
摘要: Cruise默认设置,允许cruise_m.exe进程占用约8G内存;
当系统内存不足,或Cruise运行于Win32 Platform下时,仿真过程中,可能会因内存不足,无法分配内存地址而报类似“DM_Realloc - Memory Reallocation failed” ...
Cruise默认设置,允许cruise_m.exe进程占用约8G内存; 当系统内存不足,或Cruise运行于Win32 Platform下时,仿真过程中,可能会因内存不足,无法分配内存地址而报类似“DM_Realloc - Memory Reallocation failed”这样的错误; 通常情况下,Cruise的大部分仿真任务都可以在Win32 Platform下顺利完成,但当进行联合仿真,或纯电动及混合动力车辆模型进行Cycle Run任务循环工况多次迭代仿真时,可能会因内存超限而导致仿真中途报错失败; 此时建议将Cruise软件切换到Win64 Platform下; 我们在《AVL Cruise前向仿真(Simulation 1~5)算法详解》中也介绍过一些降低内存占用方面的方法; 本文介绍的方法支持在极限内存条件下(甚至256MB内存)完成Cruise仿真计算,但一般情况下不建议使用; 当然,对于有特殊需求的用户,例如,喜欢轻量化的软件环境,不想安装64位编译器,习惯32位Matlab自带的lcc编译器编译dll进行联合仿真的朋友,可以使用本教程中的方法限制cruise_m.exe的内存占用; 此外,对于复杂系统的仿真,也可以使用此方法加大默认的8G内存限制到16G、32G、256G... AVL Cruise限制内存占用的方法: https://autosim.club/thread-77-1-1.html |
发表评论
最新评论
- 引用 spring2022
- 您好,我用的2015版本自带的hybrid2 混动模型根据您第二种方法进行最高车速仿真,仍然会出现,error 199就是内存不足的错误,请问是为什么呢?
- 引用 autosim
spring2022 发表于 2022-5-24 21:43
您好,我用的2015版本自带的hybrid2 混动模型根据您第二种方法进行最高车速仿真,仍然会出现,error 199就 ...
本教程主要用途:使用32位matlab自带lcc编译器不想另外安装编译器的用户进行联合仿真时防止ring buffer溢出。
你说的内置hybrid2模型进行最高车速仿真,理论上即便使用32位platform也不会内存溢出,切换到64位platform则肯定不会内存溢出。
问题原因大概率还是没完全理解教程配置错误,或者仿真任务设定错误导致非线性仿真组求解不收敛无限循环计算。
- 引用 spring2022
autosim 发表于 2022-5-24 22:31
本教程主要用途:使用32位matlab自带lcc编译器不想另外安装编译器的用户进行联合仿真时防止ring buffer溢 ...
您好,我现在已经切换到win64下了,只是代入了车型的基本参数的模型,把步长改到1×10-4次方,然后改为0.1秒输出一个结果,现在进行constant drive任务进行不了了。而且full load acceleration测零百加速也测不出来,请问可以从哪些方面考虑呢
- 引用 autosim
spring2022 发表于 2022-5-24 23:21
您好,我现在已经切换到win64下了,只是代入了车型的基本参数的模型,把步长改到1×10-4次方,然后改为0. ...
步长改为0.01s。
实在需要0.001s步长,按教程设置限制内存是一种方案,报错就继续减小参数阈值。
另外可以尝试增大参数,把默认的8G内存限制,增大到32G,前提是你电脑有足够的内存。
- 引用 xjjay1108
autosim 发表于 2022-5-25 09:23
步长改为0.01s。
实在需要0.001s步长,按教程设置限制内存是一种方案,报错就继续减小参数阈值。
增大内存对仿真计算时间有加速效果吗?
- 引用 autosim
xjjay1108 发表于 2022-6-15 14:19
增大内存对仿真计算时间有加速效果吗?
没有加速效果,一般用不到。
迭代仿真的时候循环次数过多,8G内存不够的时候才需要加大。