
Olá Benilton, eu estou confuso quanto a interpretação da função mclapply. Penso que as quatro operações (g1,g2,g3,g4) são todas executadas sequencialmente, uma após a outra, dentro de um mesmo núcleo. Ou seja, cada iteração do mclapply (que contém as 4 operações) vai para um mesmo núcleo. É isso? Se for isso, então o seguinte comando: -------------------------------------------------------------------------------- mclapply(1:1, function(i) { g1 <- mvrnorm(n=1, mat.cokri[[1]][1:2601],m1) g2 <- mvrnorm(n=1, mat.cokri[[1]][1:2601],m2) g3 <- mvrnorm(n=1, mat.cokri[[1]][2602:5202],m3) g4 <- mvrnorm(n=1, mat.cokri[[1]][2602:5202],m4) },mc.cores=4 ) -------------------------------------------------------------------------------- é apenas uma execução sequencial de g1, depois g2, depois g3 e por último g4? Agora, o seguinte comando: -------------------------------------------------------------------------------- mclapply(1:2, function(i) { g1 <- mvrnorm(n=1, mat.cokri[[1]][1:2601],m1) g2 <- mvrnorm(n=1, mat.cokri[[1]][1:2601],m2) g3 <- mvrnorm(n=1, mat.cokri[[1]][2602:5202],m3) g4 <- mvrnorm(n=1, mat.cokri[[1]][2602:5202],m4) },mc.cores=4 ) -------------------------------------------------------------------------------- executa primeiramente g1, depois g2, depois g3 e por fim g4 em um núcleo e paralelamente faz o mesmo (executa g1, depois g2, depois g3 e por fim g4) em um segundo núcleo. Ou seja, executa 2 iterações de um loop em paralelo. Está correto? Estou preparando um código reproduzível e estarei enviando em seguida. Muito obrigado por sua atenção Benilton. Carlos.