Dies ist mein Code. Das Zeug in der Schleife macht Sinn.
library(foreach)
library(doParallel)
cl <- makeCluster(7)
registerDoParallel(cl)
elasticitylist = foreach(i=1:nhousehold) %dopar% {
pricedraws = out$betadraw[i,12,]
elasticitydraws[,,i]= probarray[,,i] %*% diag(pricedraws)
elasticitydraws[,,i] = elasticitydraws[,,i] * as.vector(medianpricemat)
}
Ich erhalte diese Fehlermeldung:
Error in serialize(data, node$con) : error writing to connection
Ich weiß, ich habe genug Kerne (es gibt 20). Kann mir jemand helfen? Es scheint, dass die Antwort in Dokumenten nicht gefunden werden kann!
Als ich ps -ef| grep user
auf meinem Unix-Server, die ich erhalten:
/apps/R.3.1.2/lib64/R/bin/exec/R --slave --no-restore -e parallel:::.slaveRSOCK() --args MASTER=localhost PORT=11025 OUT=/dev/null TIMEOUT=2592000 METHODS=TRUE XDR=TRUE
Code im Wesentlichen identisch mit Ihnen abgesehen von einigen handgenerierten Daten funktioniert für mich. Wenn Sie das Beispiel reproduzierbar machen, kann ich einen anderen Blick darauf werfen. Verwenden Sie ungewöhnliche Datenstrukturen? – kasterma
Die Daten sind sehr groß, aber sie sind nicht ungewöhnlich. Ich denke, $ betadraw ist eine Matrixscheibe, könnte das auch so sein? – robertevansanders