Buscar

resp_lista_ex_ac_si_6

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Continue navegando


Prévia do material em texto

UNIVERSIDADE FEDERAL DE GOIÁS 
INSTITUTO DE INFORMÁTICA 
ARQUITETURA DE COMPUTADORES 
 
Exercícios – Lista 6 
 
1. Faça uma comparação entre máquinas paralelas com memória compartilhada 
e com memória distribuída. Cite vantagens e desvantagens de cada uma. 
 
Resposta: Numa máquina paralela com memória compartilhada todos 
processadores enxergam o mesmo espaço de endereçamento, enquanto numa 
máquina com memória distribuída cada processador só tem acesso direto à 
sua memória local; acesso a memória remota requer um pedido através do 
envio de mensagem. As máquinas paralelas com memória compartilhada são 
mais fáceis de se programar pois o acesso e compartilhamento de dados é 
feito com instruções simples de leitura e escrita. Entretanto, a construção 
destas máquinas é mais difícil pois existe o desafio de permitir acesso 
concorrente, a uma posição ou módulo de memória, por parte (potencialmente) 
de todos os processadores. Já as máquinas paralelas com memória distribuída 
são mais fáceis de construir, porém mais difíceis de se programar. 
 
2. Defina as etapas da metodologia de projetos de algoritmos definida por Ian 
Foster. 
 
Resposta: A metodologia de Foster é dividida em quatro etapas: Partição dos 
dados e do processamento com a criação das tarefas primitivas, 
estabelecimento do padrão de comunicação ente as tarefas, aglomeração de 
tarefas primitivas e mapeamento das tarefas nos processadores disponíveis 
 
 
3. Considere a expressão para o speedup, definida por Amdahl, S = 1 / [s + (p/N)]. 
Plote o speedup como função do número de processadores (N), supondo que a 
fração estritamente serial (s) de um programa corresponde a: (a) 2 % (b) 20 % 
Usar N= 1, 2, 4, 8, 16, 32, 64. 
 
Resposta:. 
 
4. Se s representa a fração serial de um programa, (a) prove que o limite superior 
do speedup, definido por Amdahl, é 1/s não importando quantos processadores 
(N) são utilizados. (b) Se as operações de um programa forem 90% 
paralelizáveis (p=0,9), qual é o speedup máximo alcançado numa máquina 
paralela com 9 processadores? (c) Qual é a eficiência alcançada neste caso? 
 
Resposta: O speedup é dado por S = 1 / [s + (p/N)], onde p representa a 
fração paralela do programa e N é o número de processadores. (a) Quanto N 
tende a infinito, S = 1/s . (b) S = (1 / ( 0,1 + 0,9/9)) = 1 / (0,2) = 5. (c) A 
eficiência será dada por S / N = 5 / 9 = 0,56, ou 56%. 
 
5. Suponha um programa que tenha 67% das operações executadas 
sequencialmente. Calcule o speedup definido por Amdahl e o speedup 
escalável, definido por Gustafson, numa máquina paralela com 10 
processadores. Comente os resultados obtidos. 
 
Resposta: Para o speedup definido por Amdahl, temos que S = 1 / [s + (p/N)] = 
1 / [ 0,67 + (0,33 / 10) ] = 1,42. Já para o speedup escalável (Gustafson) temos 
que S = s + p.N = 0,67 + 0,33*10 = 3,97, ou seja, 2,8 vezes maior que o 
speedup tradional. Este efeito é devido ao fato que o speedup da lei de 
Amdahl assume que o tamanho do problema é fixo, ao passo que o speedup 
escalável assume que o tamanho do problema, e o número de processadores, 
pode aumentar.