Tópicos em Arquitetura de Computadores - CI086 (2000-1)

pipeline Arquitetura de Computadores é a ciência (arte?) de selecionar e interconectar componentes de hardware para produzir computadores que atendam a requisitos funcionais, de desempenho e custo. Neste curso investigaremos, qualitativa e quantitativamente, alternativas e técnicas de projeto para atender a requisitos de projeto por vezes contraditórios. Por exemplo, estudaremos como processadores executam muitas instruções concorrentemente, e porque os sistemas de memória devem ser quase tão sofisticados quanto os processadores a que servem. Este não é um curso introdutório e pressupõe familiaridade com o conteúdo das disciplinas CI212 e CI215.

Horário: 2a,4a 15:30-17:10

Ementa: Análise e projeto de máquinas programáveis de alto desempenho, hardware e software.

Objetivo: Estudar os componentes de sistemas computacionais correntes (processador, memória e periféricos) e investigar as relações dos componentes entre si, e entre aqueles e o sistema operacional. A ênfase do curso será nas técnicas que devem ser usadas para se obter alto desempenho dos componentes individuais e do sistema completo.

Avaliação: dois trabalhos (20%+40%), uma prova (40%) A final pode substituir uma prova. Não há segunda chamada exceto nos casos previstos nos artigos 92-106 da Resolução cepe37-97.

Atendimento: antes/após as aulas e por e-mail

Programa:

data  assunto:
---------------------------------------------------------------------------
21fev fabricação de circuitos integrados
28    Tecnologia - construção de processadores

13mar Tecnologia - sistemas de memória
15    Criação e gerenciamento de processos
20    Sincronização - memória compartilhada
22    Sincronização - memória distribuída
27    Speedup versus comunicação
29    Mem. compartilhada - consistência de caches - protoc Write Once

03abr Mem. compartilhada - consistência de caches - protoc SCI
05    Aplicativos - Weather
10    Aplicativos - Migração Sísmica                      [entregar T1]
12    Aplicativos - Bancos de Dados
17    discussão resultados primeiro trabalho
19    Redes de interconexão - estáticas
24    Redes de interconexão - dinâmicas
26    Arquiteturas SIMD - processadores vetoriais

03mai Arquiteturas SIMD - máquinas paralelas (CM1/CM2)
08    Arquiteturas MIMD - passagem de mensagens - cubos e malhas
10    Arquiteturas MIMD - passagem de mensagens - árvores
15    Arquiteturas MIMD - fluxo de dados
22    Arquiteturas MIMD - memória compartilhada - barramentos, KSR1
24    Arquiteturas MIMD - memória compartilhada - DASH, NYU-ultra
29    Linguagens - seriais e paralelas
31    Linguagens - declarativas

05jun Compiladores - vetorização e análise de dependências
07    Compiladores - otimização para execução paralela    [entregar T2]
12    Sistemas Operacionais - controle de concorrência
14    Sistemas Operacionais - Mach e microkernels
19    prova

03jul final
-------------------------------------------------------------------------

Bibliografia:



volta para: encargos| página