[R-br] Dependencias no mclapply
Benilton Carvalho
beniltoncarvalho em gmail.com
Quinta Abril 19 12:42:47 BRT 2012
Cada um dos nucleos executara' as instrucoes 1-8 do modo que elas
estao apresentadas dentro da funcao.
Cada nucleo executara' essa sequencia independentemente do que esteja
acontecendo nos outros nucleos. Portanto, se o nucleo B terminar
primeiro que o nucleo A, entao o nucleo B vai executar o que estiver
na fila para ele e nao tera' nada a ver com o que esta' acontecendo no
nucleo A.
Com mclapply() vc trata apenas de problemas que sejam "embarrassingly
parallel"...
b
2012/4/19 Junior Beleti <beleti.junior em gmail.com>:
> Olá a todos.
>
> Na busca de melhorias no processamento paralelo, estou com uma dúvida quanto
> a função mclapply do pacote multicore.
> Benilton já me deu várias dicas de como proceder com o mesmo, mas ainda
> tenho a seguinte dúvida:
>
> Quanto a questão de dependências dentro das operações do mclapply, por
> exemplo, nas seguintes instruções:
>
> mclapply(1:100, function(i) {
>
> g <- mvrnorm(n=1, mat.cokri[[1]],mat.cokri[[2]])
> #1
> seq1 <- seq(1,nlinhas,by=2)
> #2
> seq2 <- seq(2,nlinhas,by=2)
> #3
> y1 <- g[seq1]
> #4
> y2 <- g[seq2]
> #5
> gerado <- data.frame(y1,y2)
> #6
> compos <- agl(gerado)
> #7
> compos1 <- cbind(compos,compos1)
> #8
>
> },mc.cores=4
> )
>
> 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.
>
> 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?
>
> 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.
>
> Att,
>
> Carlos Beleti.
>
> _______________________________________________
> R-br mailing list
> R-br em listas.c3sl.ufpr.br
> https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br
> Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código
> mínimo reproduzível.
Mais detalhes sobre a lista de discussão R-br