0

我正在探索并行编程,R我对函数的工作原理有很好的理解foreach,但我不明白parallel, doparallel, doMC, doSNOW, SNOW,multicore等之间的区别。

在做了一堆阅读之后,似乎这些包的工作方式因操作系统而异,我看到一些包使用多核这个词,而另一些则使用集群(我不确定它们是否不同),但除此之外它不是不清楚各自有什么优点或缺点。

我正在使用 Windows,我想并行使用复制权重计算标准误差,因此我不必一次计算每个复制(如果我有 n 个内核,我应该能够一次执行 n 个复制)。我能够使用 来实现它doSNOW,但它看起来像plyrR 社区一般使用doMC,所以我想知道使用doSNOW是否是一个错误。

问候,卡尔

4

1 回答 1

1

我的理解是,它是和parallel的集合体,旨在合并两者的最佳部分。 snowmulticore

对于单机并行计算,我发现parallel非常有效。

对于使用多台机器集群的并行计算,我从未成功完成使用 的集群设置parallel,但使用snow.

我从来没有使用过任何do*软件包,所以恐怕我无法发表评论。

于 2015-10-21T19:40:56.550 回答