Paralelização de Loops (cont.)
Outro Exemplo:
DO i=2,N
S1: A(i) = B(i) + C(i)
S2: C(i) = D(i) * 2
S3: E(i) = C(i) + A(i-1)
ENDDO
Dependências:
S1 ?a= S2(devido a C), S2 ?= S3(devido a C), S1 ?< S3(devido a A)
Obs: Por causa da dependência ?< as iterações são dependentes!
? Possível Corpo do loop para execução paralela:
S1: A(i) = B(i) + C(i)
signal(i)
S2: C(i) = D(i) * 2
if (iɮ) wait(i-1)
S3: E(i) = C(i) + A(i-1)
Slide anterior
Voltar para o primeiro slide
Exibir versão do elemento gráfico