1 - Relacione possibilidades de ganhos de performance em sistemas uniprocessadores, levando em conta tanto os componetes envolvidos no processamento como também sistemas auxiliares. Para maximizar os ganhos a CPU pode incorporar diversos recursos como: - pipeline para aumentar o número de instruções processadas por clock; - aumentar o número de registradores na CPU para diminuir o número de acessos a memória; - incluir no sub-sistema de meméria uma cache para reduzir o tempo necessário para ler e escrever; - memória virtual para aumentar o espaço de endereçamento; - DMA para aumentar a taxa de tranferência de E/S para memória; - utilização de interrupções no processador para não perder tempo com polling; - incluir um processador somente para as taarefas de E/S deixando a CPU principal livre. 2 - Considerando a classificação de Flynn para a organização de computadores, apresente um pequeno resumo das principais características de casa uma das categorias por ele definidas e, se possível, exemplos de arquiteturas que se encaixam em cada definição e ainda de problemas que possuem um tratamento adequado segundo cada modelo. Existem 4 classificações: SISD - Single instruction single data SIMD - Single instruction multiple data MISD - Multiple instruction single data MIMD - Multiple instruction multiple data SISD - Um único processador executando instruções indivisíveis em valores de dados indivisíveis. (Computador tradicional) MISD - Essas máquinas não foram implementadas, mas estão somente para taxonomia. SIMD - Neste tipo uma instrução é aplicada a multiplos dados na memória. Isso é feito através de diversos processadores, mas a instrução é decodificada somente uma vez por um controlador central e passado para que os vários processadores a executem sobre os dados de memória. (Maquinas vetoriais) MIMD - Conjunto de multiplos processadores atuando em multiplos dados. (Multicomputadores e Multiprocessadores). 3 - Descreva dois modelos de topologia para interconexão de processadores apresentados em aula. O barramento compartilhado todos ficam conectados em um mesmo barramento. Somente um processador pode utilizar o barramento a cada vez. A topologia em anel é a ligação dos processadores na forma de um anel. Cada procesasdor terá dois links. 4 - Comente diferenças, vantagens e desvantagens entre implementações de mecanismos de comunicação em sistemas multiprocessadores de forma fixa e de forma reconfigurável. Um sistema fixo não tem flexibilidade e uma vez que são definidos nunca mudam. É menos custoso que os sistemas reconfiguráveis. Um sistema reconfigurável é utilizado quando queremos ter uma comunicação entre muitos processadores juntamente com o sistema de E/S e a memória. O problema é que este tem um problema de logística: seu crescimento físico é muito elevado a medida que queremos conectar mais processadores. 5 - Descreva o funcionamento do mecanismo de comunicação conhecido como "crossbar switch". Quais as situações em que este mecanismo não é adequado e quais os motivos. O crossbar switch é como se fosse uma malha de conexões. Com n entradas e m saídas e todas elas interconectadas. O fluxo de dados pode ser mandando nos dois sentidos. O problema deste é o alto crescimento físico quando queremos interconectar vários precessadores. A complexidade de crescimento fica em torno de n². 6 - Descreva as diferenças do mecanismo de comunicação conhecido como redes multiestágio (multistage interconnection networks) para o mecanismo "crossbar switch". 7 - Descreva a importância dos mecanismos de roteamento de mensagens em sistemas de interconexão. O algoritmo de reteamento é extremamente importante para o desempenho das redes de multiestágio. Um algorítmo lento afeta toda a rede baixo significativamente a sua performance. 8 - Analise a problemática envolvida no uso de caches em sistemas mltiprocessadores e descreva sucintamente soluções relacionando características de hardware e software.