Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Tcl 无法分配字节-NS-2中的大规模模拟_Tcl_Simulation_Ns2 - Fatal编程技术网

Tcl 无法分配字节-NS-2中的大规模模拟

Tcl 无法分配字节-NS-2中的大规模模拟,tcl,simulation,ns2,Tcl,Simulation,Ns2,我正在使用NS-2对5000个及以上节点进行模拟 我遇到了以下错误: “无法分配32026字节”“[许多这样的错误]和 “总线错误” 我已经将我的代码用于多达500个节点,并且运行良好。现在我正在模拟大型网络。以前有人遇到过此错误吗?内存不足。您以如此小的分配量收到该消息表明您的内存确实不足;解决这一问题并非小事 造成这种情况的一种可能是在同一系统上同时运行太多其他程序,另一种可能是内存泄漏。虽然Tcl本身是经过仔细审核的内存泄漏,但我不能谈论NS2,您的脚本本身可能会导致“泄漏”,因为它们保留

我正在使用NS-2对5000个及以上节点进行模拟

我遇到了以下错误:

无法分配32026字节”
“[许多这样的错误]和 “
总线错误


我已经将我的代码用于多达500个节点,并且运行良好。现在我正在模拟大型网络。以前有人遇到过此错误吗?

内存不足。您以如此小的分配量收到该消息表明您的内存确实不足;解决这一问题并非小事

造成这种情况的一种可能是在同一系统上同时运行太多其他程序,另一种可能是内存泄漏。虽然Tcl本身是经过仔细审核的内存泄漏,但我不能谈论NS2,您的脚本本身可能会导致“泄漏”,因为它们保留对事物的引用的时间过长。整理这件事需要大量的工作


当然,你可以采取老式的“在问题上投入更多硬件”的方法。获取Tcl和NS2的64位版本,并在一个具有16GB内存的系统上运行。此选项比以前便宜得多,因为64位硬件正在成为主流(终于!),但它不是免费的…

这是有限硬件和大量节点的综合问题(因此,可能存在内存泄漏)。进一步的实验工作到3500个节点。正如您所说,这一定是内存泄漏问题。如果可能的话,您是否知道修复此问题的任何调试提示?但我们的硬件有限。我认为我不能使用16GB内存的系统!可惜你不能升级内存;这是最简单的方法,因为它只需要在问题上投入资金!查漏要困难得多;我可能需要一段时间才能在那里提出一套好的建议(除了看看valgrind中是否出现了什么,记住Tcl在内部使用了特殊的内存分配器,这可能会导致误报…),这是真的,但我在一所大学工作。因此,我不可能增加服务器上的内存容量!谢谢你的洞察力。我将使用GDB和Valgrind跟踪泄漏。