Baixe o app para aproveitar ainda mais
Prévia do material em texto
Universidade Federal do Pampa - Curso de Engenharia da Computação Disciplina de Arquitetura e Organização de Computadores II - Prof. Bruno Neves Lista de Exercícios Armazenamento e E/S 1) Mostre que Raid 3 e Raid 4 são equivalentes quanto à manutenção das informações redundantes. 2) O que é MTBF? Explique como ele é calculado. 3) Compare RAID 0, 1, 3, 4 e 5 usando como critérios desempenho e consumo energético. 4) Exercício 8.3 do livro (Organização e Projeto de Computadores – Patterson e Hennessy). 5) Exercício 8.4 do livro (Organização e Projeto de Computadores – Patterson e Hennessy). 6) Exercício 8.5 do livro (Organização e Projeto de Computadores – Patterson e Hennessy). 7) Exercício 8.8 do livro (Organização e Projeto de Computadores – Patterson e Hennessy). 8) Exercício 8.16 do livro (Organização e Projeto de Computadores – Patterson e Hennessy). 9) Explique o significado de cada uma das características dos dispositivos de E/S, apresentadas abaixo e de exemplos: ñ Comportamento ñ Parceiro ñ Taxa de dados 10) Descreva a estrutura de um HD (Hard Disk) usando todas seguintes palavras: pratos, trilhas, setores e cilindros. 11) A figura 1 abaixo mostra um gráfico que descreve uma tentativa de leitura assíncrona de uma palavra de memória. Considere que a leitura é requisitada por um dispositivo qualquer conectado a memória por um barramento assíncrono. Com base em seus conhecimentos sobre protocolo de comunicação Handshake, aponte e descreva os potenciais erros contidos no gráfico apresentado. Figura 1 12) Descreva duas situações em que o emprego de barramentos assíncronos em vez de barramentos síncronos é a melhor escolha para o projeto de um sistema de computação. 13) Compare a banda passante máxima para dois barramentos, um síncrono e outro assíncrono. Ambos barramentos possuem 32 linhas para transferir dados ou endereços. O barramento síncrono utiliza relógio com período de 20ns, sendo que cada passo da transmissão gasta um ciclo de relógio. O barramento assíncrono precisa de 30ns para cada passo do protocolo handshake. Calcule a banda passante máxima para cada barramento (em MB/s) quando se realizam leituras de blocos que têm tamanho de uma palavra (de 32 bits) em uma memória cujo tempo de acesso é 150ns. 14) Explique (se preferir descrevendo com um exemplo) como funciona o mecanismo de E/S mapeada em memória para comunicação entre processador e dispositivo de E/S. 15) Para que servem os mecanismos de polling e interrupções? Diferencie-os. 16) Explique o que é tempo de seek e latência rotacional para discos magnéticos. Como os fabricantes de discos calculam o tempo de seek médio e a latência rotacional média? 17) Diferencie latência de vazão. Descreva uma estratégia para melhorar a vazão em sistemas de E/S. 18) A) Calcule o tempo de seek médio para ler um setor de 512 bytes de um disco rígido girando a 12.000 RPM. A taxa de transferência do disco é de 100MB/seg e o overhead da controladora é de 0,5ms. Suponha que o disco esteja ocioso (de modo que não existe um tempo de espera) e que o tempo médio para leitura do setor, neste disco, é de 10 ms. B) O tempo de seek médio efetivo do sistema descrito pode ser menor que o valor calculado para o item A? Justifique sua resposta. 19) Qual o valor máximo possível para a disponibilidade? Este valor é realista (explique sua resposta)? 20) Explique quais as vantagens do RAID 5 sobre o RAID 4. 21) O protocolo Handshake é usado para sistemas síncronos ou assíncronos? Olhando para a figura 2 a seguir, que ilustra uma leitura usando o protocolo Handshake, explique os eventos ocorridos nos passos 1 e 6. Considerando que cada passo do protocolo Handshake requer 20ns para ser realizado, qual o tempo mínimo estimado exclusivamente para que a memória disponibilize através do barramento o dado solicitado (considere que este tempo começa a contar em seguida que a memória lê o endereço de leitura do barramento)? Figura 2 Multiprocessadores 1) Utilize o protocolo Write-invalidate, explique o que ocorre em cada uma das etapas descritas na tabela 1, salientando quais etapas requerem uso do barramento que interliga processadores a memória. Considere que os blocos de memória possuem tamanho de uma palavra (4 bytes) e que o barramento possui largura de 34 bits (32 bits para dados ou endereço e 2 bits para especificação da operação de barramento: leitura, escrita ou invalidação de bloco). Etapa Processador Operação Endereço (byte) 1 1 Escrita 100 2 1 Leitura 104 3 2 Escrita 100 4 1 Leitura 100 5 2 Escrita 104 2) Exercício 9.1 do livro (Organização e Projeto de Computadores – Patterson e Hennessy). 3) Exercício 9.2 do livro (Organização e Projeto de Computadores – Patterson e Hennessy). 4) “Como o software é escalável, alguns multiprocessadores podem operar mesmo com a ocorrência de falhas no hardware; ou seja, se um único processador falhar em um multiprocessador com n processadores, o sistema fornece serviço continuado com n – 1 processadores.” Discuta as principais dificuldades para alcance da escalabilidade de software em caso de falha de um dos processadores em um multiprocessador. 5) Descreva as principais dificuldades inerentes ao projeto de software para multiprocessadores 6) Com relação à figura 3, explique: A) Por que somente os clusters conseguem chegar próximo da taxa de 1 milhão de transações por minuto? B) Por que somente os clusters conseguem chegar próximo ao número de 1.000 processadores em um sistema multiprocessado? C) Por que na região central do gráfico existe vitória dos SMPs em relação aos clusters? Figura 3 7) “Como os processadores operando em paralelo normalmente compartilham dados, eles também precisam coordenar quando estão operando em dados compartilhados; caso contrário, um processador poderia começar a processar dados antes que outro tenha acabado de processá-los.” Descreva os mecanismos utilizados para solucionar o problema acima referido. 8) “Como você poderia esperar, as dificuldades de programação em um multiprocessador NUMA são diferentes das dificuldades em um multiprocessador UMA, mas as máquinas NUMA podem escalar para tamanhos maiores e, portanto, potencialmente possuem desempenho mais alto que máquinas UMA.”’ Leia o parágrafo acima e explique: 2) Por que as dificuldades de programação em um multiprocessador NUMA são diferentes das dificuldades em um multiprocessador UMA? 3) Por que as máquinas NUMA podem escalar para tamanhos maiores e, portanto, potencialmente possuem desempenho mais alto que máquinas UMA? 9) “O cliente pede tantos processadores quantos seu orçamento permitir e recebe uma quantidade correspondente de desempenho” O trecho de texto acima se refere à falácia do desempenho em multiprocessadores. Explique porque potencialmente a frase acima consiste em uma falácia. 10) A figura 4 abaixo mostra um multiprocessador de barramento único usando coerência de cache com snooping. Na figura 4 o tag snop contém um conjunto de tags duplicadas com relação a cache, qual o propósito desta duplicação? Ela resolve plenamente o problema que demandou sua utilização? Figura 4 11) Descreva os possíveis impactos do uso de um tamanho de bloco de memória demasiadamente grande para um SMP, no que diz respeito a sincronização de memória. 12) O que é falso compartilhamento? Como ele é causado? O que pode ser feito para reduzir o número de falsos compartilhamentos em um SMP? 13) A figura 5 apresenta, para duas aplicações diferentes, os impactos causados pelo aumento do número de processadores (em um multiprocessador) sobre as taxas de falhas convencionais e decoerência. ñ Explique a relação entre coerência de cache e o número de processadores relacionando sua explicação com o gráfico da figura 5a. ñ A figura 5b mostra que nem sempre os impactos causados pelo aumento do número de processadores são percebidos. A que se deve esta situação? (a) (b) Figura 3 14) Descreva as vantagens e desvantagens do uso de uma Memória Compartilhada Distribuída
Compartilhar