RInstall
Automatically install and load packages
list.of.packages <- c( "foreach", "doSNOW" ) new.packages <- list.of.packages[!(list.of.packages %in% installed.packages()[,"Package"])] if(length(new.packages) > 0){ install.packages(new.packages, dep=TRUE) } for(package.i in list.of.packages){ suppressPackageStartupMessages( library( package.i, character.only = TRUE ) ) } High Performance ComputingUse foreach with doSNOW
library(doSNOW) n.cores <- min(60, parallel::detectCores() - 1) cl <- makeSOCKcluster(n.cores) registerDoSNOW(cl) num_iteration <- 10 # show progress bar pb <- txtProgressBar(max = num_iteration, style = 3) progress <- function(n) setTxtProgressBar(pb, n) opts <- list(progress=progress) # speed up your for loop results <- foreach( i_iteration = 1:num_iteration, .combine = 'cbind', # .packages=c('lme4'), # you need to state the packages you have used in the loop .options.snow=opts ) %dopar% { set.seed(i_iteration) result <- rnorm(1) } results |