1
rのシリアルおよびパラレル実行のタイミングを評価しようとしていました。 "lapply"関数と "parLapply"関数を比較すると、次の結果が得られました。parLapplyを使用した経過時間/ユーザー時間の短縮
lapplyvec1 <- 1:400000
system.time(result <- lapply(vec1, function(x) x+2))
#using 3 nodes
cl3 <- snow::makeCluster(c("localhost","localhost","localhost"), type = "SOCK")
snow::clusterExport(cl3, c("vec1"), envir = .GlobalEnv)
system.time(clus3 <- snow::parLapply(cl3, vec1, function(x) x+2))
snow::stopCluster(cl3)
:ユーザー時間= 0.69、経過時間= 0.70 parLapply:ユーザーの時間が短縮されますが、ユーザーの時間= 0.49、経過時間= 0.92
、経過時間が増加しているようです。これが起こることができますか私は間違って何かをしましたか?並列実行を使用する場合は、経過時間を短縮する必要があると考えていたためです。