DC-UFRPE/Bacharelado em Ciência da Computação/Arquiteturas Avançadas de Computadores

Fonte: Wikiversidade

Programa da Disciplina[editar | editar código-fonte]

Nome: Arquiteturas Avançadas de Computadores
Código: 14066
Departamento: Departamento de Computação (DC)
Área: Arquitetura e Redes de Computadores
Carga-horária total: 60 horas
Créditos: 4
Pré-requisitos: Arquitetura e Organização de Computadores, Sistemas Operacionais

Ementa[editar | editar código-fonte]

Processamento paralelo, arquiteturas SIMD e MIMD. Redes de interconexão de multiprocessadores; interconexão baseada em barramentos e switches. Análise de desempenho de arquiteturas multicore, desempenho da interconexão, escalabilidade de arquiteturas paralelas e benchmarks. Arquiteturas com memória compartilhas e com passagem de mensagens. Clusters e grids. Escalonamento e alocação de tarefas.

Conteúdos[editar | editar código-fonte]

  • 1. Introdução à arquitetura avançada de computadores e processamento paralelo:
  • 1.1. Arquiteturas SIMD;
  • 1.2. Arquiteturas MIMD;
  • 1.3. Redes de interconexão;
  • 2. Redes de interconexão de multiprocessadores:
  • 2.1. Redes baseadas em barramentos;
  • 2.2. Redes baseadas em switches;
  • 2.3. Redes estáticas;
  • 3. Análise de desempenho de arquiteturas multiprocessadas:
  • 3.1. Modelos computacionais;
  • 3.2. Desempenho de redes de interconexão;
  • 3.3. Escalabilidade de arquiteturas paralelas;
  • 3.4. Benchmarks
  • 4. Arquiteturas com memória compartilhada:
  • 4.1. Multiprocessadores simétricos baseados em barramento;
  • 4.2. Métodos básicos de coerência de cache;
  • 4.3. Protocolos baseados em snooping;
  • 4.4. Protocolos baseados em diretórios;
  • 4.5. Programação com memória compartilhada;
  • 5. Arquiteturas com passagem de mensagens:
  • 5.1. Roteamento e mecanismos de swtiching em passagem de mensagens;
  • 5.2. Programação com passagem de mensagens;
  • 5.3. Suporte do processador à passagem de mensagens;
  • 6. Redes de computadores:
  • 6.1. Clusters;
  • 6.2. Redes de interconexão;
  • 6.3. Computação em grid;
  • 7. Escalonamento e alocação de tarefas:
  • 7.1. O problema do escalonamento (NP-completo);
  • 7.2. Modelos de comunicação;
  • 7.3. Algoritmos heurísticos;
  • 7.4. Alocação de tarefas;
  • 7.5. Escalonamento em ambientes heterogêneos;

Prática Como Componente Curricular[editar | editar código-fonte]

Bibliografia Básica[editar | editar código-fonte]

  • 1. El-Rewini, H., Abd-El-Barr, M., “Advanced Computer Architecture and Parallel Processing”, 1st edition, Wiley Series, 2005.
  • 2. Hennessy, J., Patterson, D., "Computer Architecture: A Quantitative Approach", 5th edition, Morgan KaufmannElsevier, 2011.
  • 3. Tanenbaum, A., “Structured Computer Organization”, 6th edition. Pearson, 2012;

Bibliografia Complementar[editar | editar código-fonte]

  • 1. Soudris, D., Jantsch, A., “Scalable Multi-core Architectures: Design Methodologies and Tools”, Springer, 2011.
  • 2. Pasricha, S., Dutt, N., “On-Chip Communication Architectures: System on Chip Interconnect (Systems on Silicon)”, 2008.
  • 3. Stallings, W., “Computer Organization and Architecture”, 9th Edition, 2012.
  • 4. Shen, J. P., Lipasti, M. H., “Modern Processor Design: Fundamentals of Superscalar Processors”, Waveland Press, 2013.
  • 5. Chen, L., “Programming Many-core Architectures”, 2008