Arquitectura de Computadores
0
2014-2015
02000605
Sistemas Digitais e Computadores
Português
Inglês
Presencial
6.0
Opcional
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, c/ exp. detalhada dos conceitos, princípios e teorias fundamentais e c/ a resolução de exerc. práticos elementares que concretizem o interesse prático da matéria e exemplifiquem a sua aplicação a situações reais. Aulas teórico-práticas em que se pretende que os alunos, c/ a orientação do docente, resolvam alguns exerc. 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 dos resultados.
Resultados de Aprendizagem
Esta disciplina tem como objectivos introduzir as técnicas fundamentais em que se baseia a computação de alto desempenho, 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 permitirão o desenvolvimento de sistemas computacionais e aplicações com maior desempenho e que explorem o processamento paralelo.
Estágio(s)
NãoPrograma
1. Fundamentos de Arquitetura de Computadores
- Revisão de conceitos básicos
- Estado atual da tecnologia
- Métricas para a avaliação de desempenho
- Princípios quantitativos
2. Paralelismo ao nível das instruções
- Execução paralela de instruções
- Conflitos e bolhas no pipeline.
- Técnicas de compilação para expor paralelismo e redução de bolhas
- Limitações no utilização do paralelismo das instruções.
3. Hierarquia de memória
-Localidade espacial e temporal.
- Técnicas para optimizar o desempenho da cache
- Tecnologia de memórias e optimizações
- Questões de proteção. Memória virtual e máquina virtual.
4. Sistemas multiprocessador e paralelismo ao nível de tarefas
- Arquiteturas de memória partilhada simétrica
- Memória partilhada distribuída e consistência
- Aspectos básicos de sincronização
-Programação paralela com MPI e OpenMP
5. Armazenamento de dados
-Suportes de armazenamento
- Definição e exemplos de falhas
- Desempenho ao nível de I/O
-Sistemas Redundantes
Docente(s) responsável(eis)
Paulo Jorge Carvalho Menezes
Métodos de Avaliação
Avaliação
A avaliação consiste em duas partes: a primeira que consiste num exame final com peso de 60% e outra composta trabalhos laboratoriais e projectos que terá um peso de 40% no resultado final. : 100.0%
Bibliografia
John L. Hennessy, David A. Patterson, Computer Architecture: A Quantitative Approach, 4th Edition, Morgan Kaufmann, 2006