Disciplina Curricular

Sistemas de Computação de Elevado Desempenho SCED

Minor em Computação de Elevado Desempenho - Min-CED 2021

Peso

6.0 (para cálculo da média)

Objectivos

: Compreender os princípios de desenvolvimento de programas paralelos escaláveis, de forma a tirar partido das capacidades de computação dos sistemas heterogéneos modernos (ex: APUs, CPU+GPU, CPU+KNL ou CPU+FPGA). Adquirir competências de índole prática na aceleração de aplicações reais em diferentes ambientes paralelos e heterogéneos, com especial ênfase na utilização de modelos de programação e APIs modernos (ex: CUDA e OpenCL), na otimização de aplicações, e no escalonamento e distribuição do trabalho pelos diversos elementos de computação. Familiarizar com as tendências mais recentes de computação paralela, com tecnologias emergentes de memória, e com técnicas avançadas para a gestão eficiente, o processamento e a análise de aplicações que operam sobre grandes volumes de dados.

Programa

1. Análise, caracterização e modelação do desempenho de aplicações: a) Paralelismo de granularidade fina e grossa ao nível dos dados e das tarefas. b) Métricas de desempenho e eficiência. c) Modelos de desempenho e de consumo energético. 2. Hierarquia de memória, modelos de consistência e de memória transacional. 3. Técnicas para otimização de aplicações e maximização do seu desempenho em unidade central de processamento paralelo com múltiplos cores: a) Identificação e extracção de paralelismo. b) Exploração de instruções vectoriais. c) Otimização de aplicações ao nível da hierarquia de memória. d) Técnicas para processamento de grandes volumes de dados. 4. Introdução às arquitecturas de processamento massivo: a) Modelos de computação e de memória. b) Programação de sistemas de processamento massivo. c) Técnicas para otimização do desempenho de aplicações em diferentes aceleradores e coprocessadores, e.g., GPU e KNL. 5.Técnicas para exploração de sistemas de processamento heterogéneos: a) Distribuição e balanceamento do trabalho. b) Cooperação entre elementos de processamento. c) Contenção e interferência de aplicações em sistemas heterogéneos. 6.Técnicas para otimização do desempenho, consumo de potência e energia de aplicações de computação intensiva e com grandes volumes de dados.

Metodologia de avaliação

Projecto (50%) + Exame final (50%)

Disciplinas Execução

2022/2023 - 1º semestre

2021/2022 - 1º Semestre