Arquitectura de Computadores
4
2020-2021
02000605
Sistemas Digitais e Computadores
Português
Inglês
Presencial
Semestral
6.0
Obrigatória
2º Ciclo - Mestrado
Conhecimentos de Base Recomendados
Programação de Computadores, Estrutura de Dados e Algoritmos, Sistemas de Microprocessadores, Sistemas de Operação.
Métodos de Ensino
Aulas teóricas, recorrendo a meios audiovisuais, com exposição dos conceitos, princípios e teorias fundamentais e com a resolução de exercícios práticos elementares que concretizem o interesse prático da matéria e exemplifiquem a sua aplicação real.
Aulas teórico-práticas em que se pretende que os alunos, com a orientação do docente, resolvam alguns exercícios de aplicação prática, que exijam a conjugação de conceitos teóricos distintos e promovam o raciocínio crítico face a problemas mais complexos.
Aulas laboratoriais com desenvolvimento de trabalhos com interpretação de resultados.
Resultados de Aprendizagem
Esta disciplina tem como objectivos introduzir as técnicas fundamentais em que se baseiam os sistemas computacionais atuais, desenvolver aptidões na análise dos benefícios de diferentes opções de projeto de sistemas computacionais para alto desempenho, e fornecer experiência em desenvolvimento de software de alto desempenho. As competências adquiridas nesta unidade curricular constituem as bases para o desenvolvimento de sistemas computacionais e aplicações com maior desempenho.
Estágio(s)
NãoPrograma
1. Fundamentos de Arquitetura de Computadores
Revisão de conceitos básicos, Métricas de desempenho
2. Paralelismo ao nível das instruções
Execução e limitações ao paralelismo das instruções.
Optimização estática e dinâmica. Preditores, execução especulativa e redução de dependências.
3. Hierarquia de memória
Localidade espacial e temporal. Caches, organização e optimizações.
Proteção. Memória virtual e máquinas virtuais.
4. Extensões multimédia e processadores vetoriais
Vantagens do uso de instruções/arquiteturas vetoriais
Modificações nas arquiteturas dos processadores para suportar instruções vetoriais
5. Sistemas multiprocessador e paralelismo ao nível de tarefas
Arquiteturas de memória partilhada simétrica e assimétrica. Protocolos de consistência e sinronização em memória distribuida. MPI e OpenMP.
6. Armazenamento de dados.
Suportes e caracterização das falhas. Desempenho. Sistemas redundantes.
Docente(s) responsável(eis)
Paulo Jorge Carvalho Menezes
Métodos de Avaliação
Avaliação
Trabalho laboratorial ou de campo: 40.0%
Exame: 60.0%
Bibliografia
John L. Hennessy, David A. Patterson, Computer Architecture: A Quantitative Approach, 5th Edition, Morgan Kaufmann, 2011