У меня есть следующий фрейм данных:
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)))
Я считаю, что parSapply
в 10 раз (!) Медленнее, чем sapply
, хотя я ожидаю, что он будет в два раза быстрее. Кстати, system
часть системного времени очень мала - пользовательское время равно истекшему.
Может кто-нибудь объяснить, почему это так?