Olá a todos.<div><br></div><div>Na busca de melhorias no processamento paralelo, estou com uma dúvida quanto a função mclapply do pacote multicore.</div><div>Benilton já me deu várias dicas de como proceder com o mesmo, mas ainda tenho a seguinte dúvida:</div>
<div><br></div><div><ul><li>Quanto a questão de dependências dentro das operações do mclapply, por exemplo, nas seguintes instruções:<br>    <br>   mclapply(1:100, function(i) {<br><br> <span class="Apple-tab-span" style="white-space:pre">   </span> g <- mvrnorm(n=1, mat.cokri[[1]],mat.cokri[[2]])                                 #1<br>
         seq1 <- seq(1,nlinhas,by=2)                                                                #2<br>         seq2 <- seq(2,nlinhas,by=2)                                                                #3<br>         y1 <- g[seq1]                                                                                           #4<br>
         y2 <- g[seq2]                                                                                           #5<br>         gerado <- data.frame(y1,y2)                                                                 #6<br>
         compos <- agl(gerado)                                                                          #7<br>         compos1 <- cbind(compos,compos1)                                                 #8<br><br>     },mc.cores=4<br>
     )</li></ul><ul><li>Em minha análise, cada um dos 4 núcleos vai executar todas as instruções dentro da função, ou seja, cada núcleo vai executar as 8 instruções dentro da função. Mas a dúvida surge quanto as dependências, visto que em uma execução sequencial, todas as instruções seriam executadas sequencialmente, e a próxima iteração só iniciaria após o resultado de "compos1" ter sido atribuído.<br>
<br>E quanto ao processo paralelo, seria respeitado tal sequencia de instruções, ou seja, a segunda iteração inicia somente após "compos1" ter sido atribuído na primeira iteração? Como o mclapply possui tal controle?<br>
<br>Estou ciente que esta questão pode ser mais da implementação do próprio pacote, mas se alguém puder me esclarecer ficaria muito grato.</li></ul></div><div>Att,</div><div><br></div><div>Carlos Beleti.</div>