【发布时间】:2015-07-17 04:44:05
【问题描述】:
我正在使用在 R 中开发的代码使用 DEoptim(旨在最小化目标函数的函数)校准具有 8 个参数的水文模型。 DEoptim 代码使用 'parallel' 包来检测使用 'DetectCores()' 的可用内核数量。在我的 PC 上,我有 4 个内核,每个内核有 2 个线程,因此它检测到 8 个内核,然后将水文模型发送到具有不同参数值的内核,并将结果返回到中心。它这样做数百或数千次并迭代参数以尝试找到最佳集合。因此,可用的内核越多,它的工作速度就越快。
我在一所大学,可以访问 Linux 计算集群。他们拥有多达 12 个内核(即非线程)的服务器,如果我使用它,它的运行速度将比我的 PC 快两到三倍。伟大的。但是,理想情况下,我会将代码分布在其他服务器上,这样我就可以访问更多内核并将所有信息发送回主服务器。
因此,我的问题是如何在我的代码中包含 Rmpi 以有效地增加可用内核。您可能会说,我对使用集群还很陌生。
非常感谢,安东尼
【问题讨论】:
标签: linux r parallel-processing