INSTITUTO FEDERAL DE EDUCAO, CINCIA E TECNOLOGIA DO SUL DE MINAS GERAIS, CAMPUS MUZAMBINHO
Relatrio Correo da Prova de Programao Paralela
Francisco Balbino Neto
Muzambinho-MG 1) Faa a paralelizao para resoluo das expresses abaixo. Considere a comunicao bloqueante, ou seja,os processos devem estar sincronizados para trocarem mensagens. Alm disso, veja com quantos processadores o algoritmo se torna mais eficiente, calculando o speedup e a eficincia com 2, 3, 4, 5, 6 ou 7 processadores, quando possvel.
De acordo com a tabela acima percebe-se que mesmo utilizando trs processadores com o tempo em paralelo menor do que com dois processadores, a eficincia ainda inferior do que com a utilizao de dois processadores.
De acordo com a tabela acima percebe-se que utilizando dois processadores cujo o tempo paralelo maior do que com trs processadores, a Speedup inferior a de com trs processadores, a eficincia com dois processadores continua sendo superior com com trs processadores.
2) Analise os algoritmos abaixo, tornando-os paralelos. Utilize o COBEGIN/COEND para fazer.
Com a tabela abaixo, qual situao apresentaria uma melhor eficincia, com i variando at 10 em todos os casos? Considere um cenrio de 2 a 6 processadores, quando ossvel. Faa um comparativo com, pelo menos, duas situaes.
Operao Tempo T* 3 T+ 2 T/ 4 Tcom 3
a) Algoritmo Sequencial: Total1 = 0; Total2 = 0; For i = 0 To n Total1 = Total1 + ai; Total2 = Total2 * ai; Total3 = Total2 / Total1;
Algoritmo Paralelo: Cobegin Begin Total1a=0 For i2+ = 1 To n/2 2Total1 = Total1a+ ai End
Begin Total1b=0 For i = n/2+1 To n Total1b = Total1b + ai End
Begin+ Total2a=1 For i = 1 To n/2 Total2a = Total2a * ai End
Begin Total2b=1 For i = n/2+1 To n Total2b = Total2b * ai End
Clculo com 2 Processadores: Tempo Paralelo: 66 Tempo Sequencial: 90 Speedup: 90 / 66 = 1.36 Eficincia: 1.39 / 2 = 0.68 => 68%
Clculo com 4 Processadores: Tempo Sequencial: 90 Tempo Paralelo: 57 Speedup: 90 / 57 = 1.57 Eficincia: 1.57 / 4 = 0.39 =>39%
b) Algoritmo Sequencial: a0 = 0 a1 = 0 For i = 2 To n ai = ai-2 * x
Algoritmo Paralelo: Cobegin a0 = 1 a1 = 1 Coend
a2 = a0 + x
For i = 3 To n Cobegin ai = ai-2 * x ai+1 = ai-1 * x Coend Clculo com 2 Processadores: Tempo Sequencial: 30 Tempo Paralelo: 21 Speedup: 30 /21 = 1.43 Eficincia: 1.43 /2 = 0.71 => 71%
Clculo com 4 Processadores: Tempo Sequencial: 30 Tempo Paralelo: 31 Speedup: 30 /31 = 0.97 Eficincia: 0.97 / 4 = 0.24 => 24 %
c) Algoritmo Sequencial: For i = 0 To n xi = (bi * ci) / 3; yi = 4 + xi;
Algoritmo Paralelo: X1 = (b1 * c1) / 3 For i = 0 To n Cobegin xi = (bi * ci) / 3 yi-1 = 4 + xi-1 Coend
Clculo com 2 processadores:
Tempo Paralelo: 67 Tempo Sequencial: 90 Speedup: 90 / 67 = 1.34 Eficincia: 1.34 / 2 = 0.67 =>67 %
Clculo com 4 processadores: Tempo Sequencial: 90 Tempo Paralelo: 198 Speedup: 90 / 198 = 0.45 Eficincia: 0.45 / 4 = 0.11 => 11%