Martin,

I think the main problem is that you are trying to assign your results to the result matrix inside the foreach loop. Parallel functions in R are generally not good at updating parts of matrices from the different workers in this way. Instead, using e.g. foreach, each loop of the foreach-call has to return a vector which can be cbind-ed to a result matrix. Something like:

L2distance = foreach(j=1:n1, .combine = cbind)  %dopar% {
    res = rep(NA, 10)
    for (k in j:n1) res[k] = k*data[j]
    res
}
L2distance

I am not sure what the np-library is, but you should consider putting it in a clusterExport-call after creating the cluster.

Best wishes,
Jon


On 7/31/2015 2:39 PM, Martin Spindler wrote:
Dear all,

when I am running the code attached below, it seems that no results are 
returned, only the predefined NAs. What mistake do I make?
Any comments and help is highly appreciated.

Thanks and best,

Martin


Simpar3 <- function(n1) {
   L2distance <- matrix(NA, ncol=n1, nrow=n1)
   data <- rnorm(n1)
   diag(L2distance)=0
   cl <- makeCluster(4)
   registerDoParallel(cl)
   foreach(j=1:n1)  %dopar% {
     library(np)
     datj <- data[j]
     for(k in j:n1) {
       L2distance[j,k] <- k*datj
     }
   }
   stopCluster(cl)
   return(L2distance)
}

Res <- Simpar3(100)

______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


--
Jon Olav Skøien
Joint Research Centre - European Commission
Institute for Environment and Sustainability (IES)
Climate Risk Management Unit

Via Fermi 2749, TP 100-01,  I-21027 Ispra (VA), ITALY

jon.sko...@jrc.ec.europa.eu
Tel:  +39 0332 789205

Disclaimer: Views expressed in this email are those of the individual and do not necessarily represent official views of the European Commission.

______________________________________________
R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to