Programação
Geral
Por enquanto, notas somente de quem tirou menos do que 6,0 na P1.
Informações sobre a disciplina
Profa. Responsável: Sarita Mazzini Bruschi (sarita@icmc.usp.br)
Horários: 2ª feira, das 8h10 às 9h50 e 5ª feira, das 8h10 às 9h50
Objetivos
Familiarização dos estudantes com arquiteturas paralelas e com tecnologias avançadas para processadores.
Programa
Tecnologias avançadas para processadores: processadores RISC e CICS, superescalares, vetoriais e pipelines. Arquiteturas paralelas: taxonomias, computadores SIMD e MIMD, memória compartilhada e distribuída, arquiteturas não convencionais. Avaliação de desempenho de arquiteturas de computadores.
Bibliografia
Livro Texto (Júpiter):
- HWANG, K. Advanced Computer Architecture: Parallelism, Scalability, Programmability, McGraw-Hill, 1996.
- PATTERSON, D.A., HENNESSY, J.L. Computer Organization and Design: The Hardware/Software Interface, Morgan Kaufmann, 1994.
Livro Texto (Atualizado):
- HENNESSY, et al Computer Architecture: A Quantitative Approach. Morgan Kaufmann, 2003, 3rd edição, ISBN 1558605967.
Bibliografia Complementar (Júpiter):
- TOCCI, J.R.; WIDMER, N.S. Sistemas Digitais - Princípios e Aplicações, Pearson, Prentice Hall, 2003.
- MANO, M.M. Computer System Architecture, Prentice-Hall International, Inc., 1993.
- TANENBAUM, A.S. Structured Computer Organization, Prentice-Hall International, 1999.
- ALMASI, G.S., GOTTLIEB, A, Highly Parallel Computing, 2a edição, The Benjamin Cummings Publishing Company Inc., 1994.
- NAVAUX, P.O.A. Processadores Pipeline e Processamento vetorial - VII Escola de Computação, São Paulo, 1990.
Bibliografia Complementar (Atualizada):
- PARHAMI, B. Arquitetura de Computadores: de microprocessadores a supercomputadores, Ed. McGraw-Hill, 2007.
- MANO, M.M.; KIME, C.R. Logic and Computer Design Fundamentals. Prentice Hall, 2000.
- WAKERLY, J.F. Digital Design: Principles & Practices. Third Edition, Prentice Hall, 2000.
Revisão de Organização de Computadores Digitais
Objetivo da aula: revisar o conteúdo da disciplina Organização de Computadores Digitais
- Diferença entre Organização e Arquitetura (1a. aula - 20/03/17)
- Componentes de um computador (1a. aula - 20/03/17)
- Arquitetura MIPS: ISA, Caminho de Dados e Unidade de Controle (2a., 3a e 4a. aulas - 23/03/17, 27/03/17 e 30/03/17)
- Hierarquia de Memória (Cache e Mem. principal) (5a aula - 03/04/17)
- E/S (6a. aula - 06/04/17)
- Diferença entre Organização e Arquitetura (1a. aula - 20/03/17)
Pipeline
Arquiteturas CISC x RISC
Introdução aos conceitos e Pipeline
Versão monociclo da arquitetura MIPS
- Implementação do Pipeline na arquitetura MIPS monociclo: caminho de dados e unidade de controle
- Implementação da técnica forwarding para deteção de dependência de dados no pipeline da arquitetura MIPS.
- Implementação de stall quando há dependência de dados no pipeline da arquitetura MIPS.
Dependência de controle
Exercício de pipeline - Técnicas avançadas de Pipeline
Evolução da Arquitetura Intel
Principais características das arquiteturas da Intel, com ênfase nos pontos teóricos estudados
- Primeira parte da evolução das arquiteturas: 8086, 286, 386, 486, Pentium, Pentium MMX, Pentium Pró, Pentium II, Pentium III, Pentium M
- Segunda parte da evolução das arquiteturas: Microarquiteturas Netburst, Core e Core Serie
Paralelismo em nível de Threads
Exemplos de como as arquiteturas suportam a execução de várias threads ao mesmo tempo, através do paralelismo em nível de threads
- Arquiteturas que suportam a execução de várias threads ao mesmo tempo
Arquiteturas Paralelas
Introdução às arquiteturas paralelas
Classificação de Flynn
Arquiteturas SIMD (Vetoriais, matriciais e extensões do conjunto de instruções SIMD para multimídia)
- Arquiteturas MIMD com Memória Compartilhada
- SMP
- NUMA
- CC-NUMA
- Arquiteturas MIMD - Memória Compartilhada
- Protocolos de Coerência de Cache
- Protocolos de Coerência de Cache
Arquiteturas MIMD com Memória Distribuída
- Características
- Comunicação
- MPP
- Cluster