J'essayais d'évaluer les timings des exécutions en série et en parallèle dans r. En comparant la fonction "lapply" et les fonctions "parLapply", j'ai obtenu les résultats suivants.Réduction du temps écoulé/temps de l'utilisateur en utilisant parLapply
vec1 <- 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)
lapply: temps utilisateur = 0,69, le temps écoulé = 0,70 parLapply: temps utilisateur = 0,49, le temps écoulé = 0,92
Bien que le temps d'utilisation est réduit, le temps écoulé semble être augmenté. cela peut-il arriver ou ai-je fait quelque chose de mal? Parce que je pensais que le temps écoulé devrait être réduit lors de l'utilisation des exécutions parallèles.