Programa

Introdução à arquitetura básica de computadores                                                                       

-      CPU, memórias, unidades de processamento.
-      Tipos primitivos: inteiro, ponto flutuante.

Computação de Alto Desempenho       

-      Conceito de FLOPS (Floating Point Operations per Second).
-      Otimização de códigos sequenciais.
-      Computadores paralelos.
-      Processadores multi-core e many-core.
-      Configuração otimizada de compiladores.

Computação Paralela

-      Multiprocessamento paralelo.
-      Conceitos básicos de computação distribuída (cluster, grid e cloud).
-      Algoritmos paralelos.
-      Programação paralela por threads (OpenMP) e por mensagens (MPI).
-      Medição do desempenho de programas paralelos.
-      Programação de propósito geral em processadores gráficos (GPU – C CUDA).
-      Big Data

Estudos de casos

-      Seleção de estudos de caso para exemplificar as técnicas estudadas no curso.

Considerações finais

-      O que fazer agora?
-      O que ler?
-      Como me especializar?