| Designação | Código | Curso | Regime | Regente |
|---|
Arquiteturas Avançadas de Computadores | 16916 [ME97ME9700007444] | Mestrado em Computação Avançada [MCA] | S1 | André Martins Pereira |
Objetivos | Esta unidade curricular fornece os conhecimentos necessários para compreender e analisar o hardware de servidores homogéneos e heterogéneos em supercomputadores. Os resultados de aprendizagem concentram-se em dois componentes principais na perspectiva de um engenheiro de desempenho: o desempenho e eficiência energética de dispositivos multicore e manycore; e tecnologias de interligação dentro e entre chips. Estes conceitos são fundamentais para desenvolver código paralelo eficiente. O programa é consistente com os resultados de aprendizagem. Esta UC apresenta a arquitetura de dispositivos comuns como base para aprofundar os detalhes do hardware existente em servidores. Os conceitos são apresentados recorrendo a casos de estudo reais, permitindo aos estudantes avaliar o seu impacto no desempenho de hardware real. Os conteúdos estão estruturados de forma a permitir o estudo incremental e o teste de otimizações e metodologias que permitam o desenvolvimento de código paralelo eficiente.
|
Programa | 1. Arquiteturas multicore, focando em paralelismo ao nível da instrução, execução fora de ordem, e encadeamento 2. Paradigmas SIMD, MIMD, processamento vetorial e hierarquia de memória 3. Comparação entre arquiteturas multicore ARM e x86 4. Aceleradores manycore e os seus diferentes modelos de programação 5. Organização de dispositivos em servidores homogéneos e heterogéneos com aceleradores, avaliando o impacto no desempenho de NUMA e interligações PCI-E e CXL 6. Preocupações de energia e sustentabilidade nas arquiteturas de supercomputação 7. Arquiteturas de computação com desagregação de recursos e outras tecnologias emergentes 8. Visão geral dos supercomputadores de larga escala líderes e futuras tendências em computação avançada
|
Bibliografia | Computer Organization and Design RISC-V Edition: The Hardware/Software Interface, David Patterson and John Hennessy, Morgan Kaufmann, 2020. Computer Architecture: a Quantitative Approach, David Patterson and John Hennessy, Morgan Kaufmann, 2017. Introduction to High-Performance Scientific Computing, 2nd Edition, Victor Eijkhout, 2010. CUDA for Engineers: An Introduction to High-Performance Parallel Computing, Duane Storti and Mete Yurtoglu, 2015.
|
Resultados da aprendizagem | - Caracterizar conceitos chave de desempenho em arquiteturas de dispositivos multicore e manycore - Caracterizar conceitos fundamentais na organização de servidores homogéneos e heterogéneos - Entender as topologias de interligação inter- e intra-chip em supercomputadores - Identificar tecnologias emergentes, contextualizando as suas contribuições no contexto global dos ecosistemas de computação avançada - Analisar exemplos reais de arquiteturas de elevado desempenho de sucesso - Avaliar o impacto de elementos arquiteturais no desempenho e eficiência energética de código paralelo
|
Método de avaliação | A avaliação é feita através de um teste escrito (30%-40%), trabalhos práticos (50%-70%), e participação nas sessões práticas (até 10%). |
Funcionamento | Turno: T 1; Docente: André Martins Pereira; Dep.: DI; Horas: DI. Turno: PL 1; Docente: Gonçalo Medeiros São Pedro Raposo; Dep.: DI; Horas: DI. |