gpt4 book ai didi

r - 带plyr的多核,MC

转载 作者:行者123 更新时间:2023-12-04 13:53:23 28 4
gpt4 key购买 nike

嗨,我正在尝试将R的ddply库中的plyrMC包一起使用。它似乎并没有加快计算速度。这是我运行的代码:

require(doMC)
registerDoMC(4)
getDoParWorkers()
##> 4
test <- data.frame(x=1:10000, y=rep(c(1:20), 500))
system.time(ddply(test, "y", mean))
# user system elapsed
# 0.015 0.000 0.015
system.time(ddply(test, "y", mean, .parallel=TRUE))
# user system elapsed
# 223.062 2.825 1.093

有任何想法吗?

最佳答案

相对于将拆分部分分配到每个核心并获取结果所需的通信成本,mean函数的运行速度过快。

这是分布式计算中经常遇到的“问题”。他们希望这样做会使一切运行得更快,因为他们忘记了成本(节点之间的通信)和 yield (使用多个内核)。

plyr中的并行处理特有的东西:只有函数在多个内核上运行。拆分和合并仍然在单个内核上完成,因此要并行使用plyr函数,您要应用的函数将需要大量的计算工作才能看到好处。

关于r - 带plyr的多核,MC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9808495/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com