require(snow)
require(parallel)
myfunction <- function(n){
return(n^2)
}
values <- 1:5000000
## Number of cores (R processes) to use:
CPUs <- detectCores()
## Define clusters of CPUs for parallel processing
###YOUR NUMBER OF CORES GOES HERE ###,type="PSOCK"
cl<-makeCluster(CPUs, type = "PSOCK")
#一般
system.time(
a <- lapply(values, myfunction)
)
## user system elapsed
## 14.78 0.08 14.96
#平行處理
system.time(
b <- parLapply(cl, values, myfunction)
)
## user system elapsed
## 6.52 0.19 9.57
stopCluster(cl)