Buscar

prova 3


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

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
Você viu 3, do total de 4 páginas

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

1 
 
 
 
1 – Considere uma situação em que três processadores em uma configuração SMP, ao longo do 
tempo, exigem acesso à mesma linha de dados da memória principal. Ambos os processadores têm um 
cache e usam o protocolo MESI. Inicialmente, ambos os caches têm uma cópia inválida da linha. Indique 
as transições de estados para a seqüência de acessos a seguir, justificando: 
a. P1 lê x. 
b. P2 lê x. 
c. P3 escreve em x. 
d. P2 lê x 
e. P1 escreve em x 
 
 P1 P2 P3 Comentários 
a I → E I → I I → I Apenas P1 tem o valor de x, indicado pelo monitoramento 
b E → S I → S I → I Pelo mointoramento, P1 e P2 sabem que x é compartilhado 
c S → I S → I I → M P3 sinaliza que P1 e P2 devem invalidar o valor de x 
d I → I I → I 
I → I 
I → S 
M → M 
M → S 
S → S 
P2 tenta ler x, é monitorado por P3, que bloqueia P2, 
Após o qual modifica o valor de x na memória, sincronizando 
seu valor com a memória e desbloqueando a leitura de P2 de x 
e I → M S → I S → I P1 sinaliza que P2 e P3 devem invalidar o valor de x 
 
 (Valor: 2,5) 
 
2 – Suponha um sistema de multiprocessamento simétrico com n CPUs. Considere que existem 3 
programas que levam 1 (um) segundo para executar sequencialmente em 1 (uma) CPU. Os programas 
são paralelizáveis, sendo que metade do código pode ser executado em até 2 (duas) CPUs ao mesmo 
tempo. Considere também que a parte paralelizável do programa P1 é a primeira metade do código e a 
parte paralelizável de P2 e P3 é a segunda parte do código. Qual é o número mínimo de CPUs para estes 
programas executarem em um menor tempo possível e qual é este tempo? Explique. 
 
O número mínimo de CPUs para estes programas executarem em um menor tempo possível é 5, como 
pode ser observado na figura. O tempo mínimo é 0,75s. Inicialmente, é preciso observar que não é 
possível executar estes programas em menos do que 0,75s, qualquer que seja o número de UCPs, em 
função da parte serial seguida da paralela, ou vice-versa. Portanto, 0,75s é o tempo mínimo. 
 
Além disto, devido às dependências, como se pode observar, nenhuma dos blocos amarelo, vermelho ou 
marrom podem ser adiantadas. Portanto, no tempo de 0,5s à 0,75s, são 5 blocos executando ao mesmo 
tempo, nenhum deles podendo executar antes. Caso não haja 5 UCPs, um destes blocos terá que executar 
no intervalo 0,75 à 1s, atrasando a execução. Portanto, 5 UCPs é o número de UCPs mínima e adequada, 
ao mesmo tempo, para executar estes 3 programas em um tempo mínimo. 
 
 
2 
 
 
(Valor: 2,0) 
 
3 – Para cada uma das opções da figura, assinale a alternativa correta: 
 
 
 
 
a) A letra a) está associada a um multithread granular e a letra b) a um multithread 
intercalada. 
3 
 
b) A letra c) está associada a um multithread granular e a letra d) a um multithread 
simultânea. 
c) A letra a) está associada a um multicore e a letra c) a um multithread simultânea. 
d) A letra b) está associada a um multithread intercalada e a letra c) a um multicore. 
e) A letra a) está associada a um multithread simultânea e a letra d) a um multicore. 
(Valor: 1,0) 
 
4 - Julgue as afirmações abaixo em relação à coerência de cache e multiprocessamento, assinale TODAS 
as afirmativas que considerar corretas: 
 
a – Os processadores vetoriais são um tipo de arquitetura SIMD. 
b – Em sistemas de memória compartilhada, o árbitro de barramento cumpre a função de 
impedir o que o conflito no acesso simultâneo à memória por parte das CPU leve à perda de dados. c 
– No caso do tratamento da coerência entre os caches L1 e L2, a política write-through pode ser 
utilizada. d – Multiprocessadores simétricos não compartilham a utilização da memória principal. 
e - Uma arquitetura multithreading executa simultaneamente o código de diversos fluxos de instruções 
(threads). f - Em uma arquitetura VLIW, o controle da execução das várias instruções por ciclo de 
máquina é feito pelo hardware. 
 (Valor: 1,5) 
 
5 – Em relação ao protocolo de coerência de cache, assinale TODAS as afirmativas que 
considerar corretas: 
a) Para o protocolo write-invalidate, é necessário um snooping cache monitorar (snoop) apenas em 
linhas de endereço, e não em linhas de dados; 
b) O protocolo de coerência de cache tem 4 (quatro) estados: modificada: a linha da cache foi 
duplicada (é diferente da memória principal) e está presente em toda cache. dedicada: a linha 
da cache é destinada à memória principal e não está presente em nenhuma outra cache. 
compartilhada: a linha da cache é diferente da memória principal e pode estar presente em 
outra cache. finita: a linha da cache contém dados válidos apenas na memória principal; 
c) Quando dois ou mais processadores acessam a memória em um barramento compartilhado, 
ocorre um conflito, e o árbitro de barramento permite a apenas um deles acessar a memória, 
enquanto o outro deve esperar o término do primeiro para acessar; 
d) Em uma alteração do protocolo de coerência de cache de write-back MESI que têm apenas três 
estados, o estado I (inválido) não é necessário; 
(Valor: 1.5) 
 
6 – Duas possibilidades para a construção de sistemas com múltiplos processadores são: 
processadores idênticos com um único espaço de endereçamento interligados por um barramento único 
(SMP); e máquinas monoprocessadas conectadas por uma rede (cluster). Com relação a esses sistemas, 
assinale a opção INCORRETA. 
 
A A comunicação entre processadores de um cluster é, potencialmente, muito mais lenta que a 
comunicação entre processadores de um sistema SMP, pois embora as redes atuais possuem taxa de 
transmissão da ordem de gigabits/s, os sistemas de barramento internos do SMP são mais eficientes; 
B Comunicação entre processos pode ser implementada de forma mais eficiente em um SMP do 
que em um cluster; 
C Em um sistema SMP, é mais difícil substituir um processador defeituoso, pois em um cluster 
não é necessário desabilitar a rede de comunicação para que a troca seja efetuada sem prejudicar a troca 
de mensagens entre os processos; 
D Alocação de memória para processos é muito mais simples em um cluster, pois cada processador 
executa um único processo na sua memória exclusiva e, dessa forma, não existe o problema de 
distribuição de processos no espaço de endereçamento único da máquina SMP; 
E Em um cluster, o custo da escalabilidade é muito menor, pois, para a interconexão entre as 
máquinas, podem ser utilizados equipamentos comuns usados em uma rede local de computadores, ao 
passo que um sistema SMP exige conexões extras no barramento e gabinetes especiais. (Valor: 1.5) 
4