Arquitecturas Avançadas de Computadores
Áreas Científicas |
Classificação |
Área Científica |
OFICIAL |
Arquitectura de Computadores |
Ocorrência: 2010/2011 - 1S
Ciclos de Estudo/Cursos
Língua de trabalho
Português - Suitable for English-speaking students
Objetivos
Esta unidade curricular introduz as principais arquitecturas de computadores actuais, explicitando as relações entre opções arquitectónicas, domínios de utilização e tecnologia de fabrico.
A análise das opções de implementação física e lógica dos diferentes subsistemas, associada à análise do respectivo impacto sobre o desempenho, permitirá aos estudantes descrever e avaliar criticamente computadores actuais e futuros, bem como perceber as implicações de cada tipo de arquitectura para o projecto e desenvolvimento de aplicações informáticas.
Após completar esta unidade curricular, os estudantes serão capazes de:
- identificar e estimar os factores de custo associados ao fabrico de processadores;
- avaliar o consumo de energia de um processador;
- identificar as condicionantes tecnológicas actuais;
- descrever as tendências de desenvolvimento da tecnologia de fabrico
- usar um conjunto de "benchmarks" para avaliar o desempenho;
- avaliar quantitativamente os principais factores de desempenho de um CPU;
- identificar os tipos de dependências existentes entre as instruções de um programa;
- explicar os principais mecanismos, tanto estáticos como dinâmicos, de extracção de paralelismo de programas sequenciais;
- identificar as limitações dessas abordagens;
- descrever as técnicas básicas de escalonamento dinâmico de instruções;
- reconhecer a importância da previsão de saltos;
- avaliar quantitativamente o impacto da previsão de saltos para o desempenho;
- descrever os aspectos mais salientas da emissão simultânea de múltiplas instruções;
- descrever os mecanismos de apoio à execução de instruções fora de ordem;
- usar ferramentas de medida baseadas em contadores de eventos de hardware;
- explicar a organização de sistemas multi-processadores de memória partilhada (SMP);
- especificar e analisar protocolos de acesso a memória partilhada (centralizada e distribuída);
- usar ferramentas de simulação para investigar o comportamento de sistemas de memória partilhada;
- descrever os mecanismos de sincronização de processadores;
- explicar o problema da consistência de memória partilhada e as principais soluções;
- descrever a hierarquia de memória de um computador;
- avaliar quantitativamente o desempenho da hierarquia de memória;
- identificar e descrever métodos de optimização de memórias cache;
- descrever e avaliar o impacto da tecnologia de circuitos de memória;
- distinguir diversos domínios de aplicação de computadores;
- explicar o impacto do domínio de aplicação sobre a arquitectura do sistema em três casos: sistemas embarcados (consolas de jogos, telemóveis, câmaras fotográficas), processamento vectorial de dados (cálculo científico), criação de gráficos (GPU).
Programa
1. Fundamentos -- Aspectos tecnológicos: circuitos integrados, custo e consumo de energia. Tendências tecnológicas. Avaliação empírica de desempenho. Factores quantitativos do projecto de computadores.
2. Execução concorrente de instruções -- Extracção de paralelismo: abordagens dinâmicas e estáticas. Dependências de dados e controlo. Mecanismos de escalonamento e previsão de saltos. Emissão simultânea de múltiplas instruções. Execução fora de ordem e especulação.
3. Multi-processadores e arquitecturas "multi-core" -- Multi-processadores simétricos de memória partilhada (centralizada ou distribuída). Sincronização. Consistência de memória.
4. Hierarquia de memória -- Níveis da hierarquia de memória. Desempenho de memórias cache. Virtualização. Melhoramento do desempenho dos circuitos de memória.
5. Adaptação ao domínio de aplicação -- Sistema embarcados ("embutidos"). Processadores vectoriais. Processadores gráficos.
Bibliografia Obrigatória
John L. Hennessy, David A. Patterson;
Computer architecture. ISBN: 978-0-12-370490-0
Bibliografia Complementar
Hwang, Kai;
Computer Architecture and Parallel Processing. ISBN: 0-07-031556-6
Stone, Harold S.;
High-performance computer architecture. ISBN: 0201526883
Métodos de ensino e atividades de aprendizagem
A componente teórica da disciplina será baseada em aulas de exposição dos diversos temas da disciplina que serão acompanhados, sempre que oportuno, da apresentação de exemplos e da respectiva discussão.
Nas aulas teórico-práticas serão estudados empiricamente aspectos de diferentes subsistemas com recurso a ferramentas de simulação; também se procederá ao estudo de casos e à resolução de problemas.
A disciplina inclui ainda um trabalho que consiste na elaboração e realização de uma apresentação sobre aspectos actuais da arquitectura de computadores.
Software
SMPCache
OProfile
Palavras Chave
Ciências Tecnológicas > Engenharia > Engenharia de computadores
Tipo de avaliação
Avaliação distribuída com exame final
Componentes de Avaliação
Descrição |
Tipo |
Tempo (Horas) |
Peso (%) |
Data Conclusão |
Participação presencial (estimativa) |
Participação presencial |
42,00 |
|
|
Apresentação |
Trabalho escrito |
36,00 |
|
|
Exame |
Exame |
3,00 |
|
|
|
Total: |
- |
0,00 |
|
Componentes de Ocupação
Descrição |
Tipo |
Tempo (Horas) |
Data Conclusão |
Estudo |
Estudo autónomo |
60 |
|
Preparação para exame |
Estudo autónomo |
21 |
|
|
Total: |
81,00 |
|
Obtenção de frequência
A nota de frequência (Freq) é a nota do trabalho.
Para obtenção de frequência é necessário que Freq>= 8,0.
Fórmula de cálculo da classificação final
A classificação final (F) é calculada a partir da nota de exame (E) e da nota de frequência (Freq) de acordo com
F = 0,7 E + 0,3 Freq
O exame final tem a duração de 2:00 horas, sendo permitida a consulta de apontamentos.
Provas e trabalhos especiais
Não se aplica.
Avaliação especial (TE, DA, ...)
Exame com consulta e 2:30 H de duração.
Melhoria de classificação
A nota de exame pode ser melhorada no recurso através da realização de uma prova escrita de dificuldade semelhante à do exame (2:00 horas, com consulta).
A classificação final global (incluindo a avaliação distribuída) pode ser melhorada através da realização de uma prova escrita de 2:30 H (com consulta).