我进行了各种搜索,但尚未找到讨论如何构建用于 NetLogo 的建模计算机的论坛或文章。我希望开始这样的讨论,并且由于 NetLogo 的内存使用与世界的大小成正比,并且与 BehaviorSpace 并行运行的模拟数量,存在一个将足够的硬件与 NetLogo 需求相关联的公式似乎是合理的。
例如,我计划在大约 12 公里 x 12 公里的景观中运行一个元种群模型,对应于像素大小为 1 的 12,000x12,000 的 NetLogo 世界,分辨率为 1 米(与动物的运动行为相关) )。较早的一篇文章描述了一个大世界(如何在 NetLogo 中模拟一个非常大的世界?),并讨论了减少大世界需求的潜在方法(http://netlogo-users.18673.x6.nabble.com/Re -Relogo-td4869241.html#a4869247 的谣言)。另一篇文章描述了一个 3147x5141 的世界,并且使用的是具有 64GB RAM 的 Linux 计算机(http://netlogo-users.18673.x6.nabble.com/Java-OutofMemory-errors-for-large-NetLogo-worlds-suggestions-请求-td5002799.html)。显然,计算机运行大型 NetLogo 世界的能力变得越来越重要。
据推测,对于能够访问基于 Windows 的机器的大学研究人员而言,“最佳”解决方案是运行 16GB 到 64GB 的 RAM,配备六核或八核处理器,例如能够超线程以并行运行多个模拟的 Intel Xeon与行为空间。例如,我在一台机器上使用 SELES(2001 年秋季和秋季),该机器具有 6 核 Xeon 处理器并启用了超线程和 8GB RAM,以运行 12,000 次复制具有 1 米分辨率光栅图为 1580x1580 的模型。这充分利用了计算机的能力,运行模拟大约需要一个月的时间。
所以 - 如果我要在 NetLogo 中运行 12,000 个 12,000x12,000 世界的复制品,那么计算机的“最佳”选项是什么?在没有达到最新和最强大的处理能力的情况下,我认为最经济合理的选择是具有双 Xeon 处理器(可能是 8 核 Ivy 桥)和 64GB RAM 的服务器主板。这是否是一个足够的设计,或者是否有更便宜(或不)用于这种规模的建模的替代方案?此外,是否存在处理器/RAM 组合的“指南”来应对随着世界规模和并行模拟数量的增加而增加的 NetLogo 对内存的需求?