parSapply比sapply慢很多(!)

时间:2018-09-17 10:46:46

标签: r parallel-processing apply

我有以下数据框:

df = data_frame(x = rnorm(10^7), y = rnorm(10^7), z = rnorm(10^7))

我想比较sapply和parSapply:

cl <- makeCluster(2, type = "SOCK" )
clusterEvalQ(cl, library("dplyr"))

比较两者时:

system.time(sapply(df, function(x) order(x, na.last = T)))
system.time(parSapply(cl, df, function(x) order(x, na.last = T)))

我发现parSapplysapply慢10倍(!),而我希望它快两倍。顺便说一下,系统时间的system部分非常少-用户时间等于经过的时间。

有人能解释为什么吗?

0 个答案:

没有答案