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)