MO801/MC972 - Tópicos em Arquitetura e Hardware - Sistemas Multicore: Software e Hardware

Informações Gerais

Professor: Rodolfo Jardim de Azevedo (email)

Aula: Seg-Qua: 14h-16h

Atendimento: Logo após a aula. Se não puder ficar neste horário, basta enviar um email com uma sugestão de novo horário.

Sala: 301

Avaliação

Veja Também

Avisos

18/06Listagem das entregas já recebidas.
24/04Grade das apresentações do trabalho 1 já estão no calendário no final desta página.
17/04Listagem dos resumos já recebidos. Este arquivo será atualizado continuamente até o final do curso.
17/03 Aula na sala 317.
27/02 Verifique as datas importantes no calendário de pós-graduação e no calendário de graduação.

Objetivos

Estudar conceitos relacionados com Arquiteturas de Computadores Multicores. O Curso será dividido em duas partes, uma com foco em Software e outra com foco em Hardware. A parte de software conterá várias atividades práticas em laboratório.

Bibliografia

Veja lista de artigos para resumos e notas de aulas.

Alguns itens úteis para realizar os trabalhos:

Principalmente em relação às APIs de programação, existem muitas páginas com bons tutoriais. Façam uma busca no Google sobre elas.

Atividades

Cada aluno deverá fazer 8 resumos durante o semestre, uma apresentação sobre um tema específico e três trabalhos individuais (um teórico e dois práticos).

Os alunos matriculados apenas na disciplina MC972 devem entregar apenas 4 resumos.

Resumos

Todos os artigos abaixo devem ser lidos e resumidos durante o curso. As datas de entrega estão no calendário no final dessa página. Um resumo deve ter apenas uma página. Como guia, um resumo deve conter: Visão geral do assunto do artigo, contribuição do artigo, resultados obtidos e um comentário sobre a relevância desse trabalho tanto em relação à área quanto em relação ao curso.

  1. Moore, G.E., "Cramming More Components Onto Integrated Circuits," Proceedings of the IEEE , vol.86, no.1, pp.82-85, Jan 1998.
  2. Agarwal, Anant; Levy, Markus, "The KILL Rule for Multicore," Design Automation Conference, 2007. DAC '07. 44th ACM/IEEE , vol., no., pp.750-753, 4-8 June 2007.
  3. Fan, X., Weber, W., and Barroso, L. A. 2007. Power provisioning for a warehouse-sized computer. In Proceedings of the 34th Annual international Symposium on Computer Architecture (San Diego, California, USA, June 09 - 13, 2007). ISCA '07. ACM, New York, NY, 13-23.
  4. Wenisch, T. F., Ailamaki, A., Falsafi, B., and Moshovos, A. 2007. Mechanisms for store-wait-free multiprocessors. In Proceedings of the 34th Annual international Symposium on Computer Architecture (San Diego, California, USA, June 09 - 13, 2007). ISCA '07. ACM, New York, NY, 266-277.
  5. Livre. Se não for relacionado com seu trabalho 1, resumir um artigo da conferência ISCA.
  6. Livre. Se não for relacionado com seu trabalho 1, resumir um artigo da conferência ASPLOS.
  7. Livre. Se não for relacionado com seu trabalho 1, resumir um artigo da conferência CGO.
  8. Livre. Se não for relacionado com seu trabalho 1, resumir um artigo da conferência MICRO.

Formato de entrega: Envie um resumo por email, o assunto deve conter, obrigatoriamente o código da disciplina (MO801), seu RA e o número do resumo. Exemplo: MO801 - 985306 - R1. Anexe ao email o seu resumo, em formato PDF, com o nome na forma RA-Numero_do_resumo.pdf. Exemplo: 985306-R1.pdf. Fazendo isto você facilitará a identificação do seu email. Lembre-se: são 21 alunos que enviarão 8 emails, total: 168 emails com resumos!

Trabalhos

Cada aluno deve fazer, individualmente, os trabalhos abaixo:

Apresentações

Cada aluno fará uma apresentação durante o semestre. A apresentação será sobre o tema do trabalho teórico escolhido.

Calendário

27/02 Apresentação e Motivação do Curso
03/03 Leitura e revisão do primeiro artigo. Comentários.
05/03 Construindo uma arquitetura multicore ppt
10/03 Conceitos básicos de programação paralela ppt
12/03 Conceitos básicos de programação paralela ppt
17/03 Laboratório (PThreads e OpenMP). Sala 317
19/03 Laboratório (PThreads e OpenMP). Sala 317
24/03 Problemas com Threads ppt
26/03 Prazo final para reserva de tópico para o Trabalho 1 e de programa para o Trabalho 3. Vetorização. ppt
31/03 Não haverá aula de MO801/MC972
02/04 Coerência de Cache ppt
07/04 Curso de arquitetura e programação para processador Cell (Leonardo Garcia - IBM) pdf
09/04 Curso de arquitetura e programação para processador Cell (Leonardo Garcia - IBM) pdf
14/04
16/04 Não houve aula.
21/04 Não haverá aulas. (Calendário da Unicamp)
23/04 Profilling
log
28/04 Vetorização
30/04 Dúvidas
05/05 Dúvidas
07/05
12/05
14/05
19/05 Prazo final para entrega do Trabalho 2. Apresentações: Paralelização Dinâmica de Código e Memórias Transacionais
21/05 Apresentações: Economia de energia em sistemas embarcados multiprocessados e Thread-Level Speculation (TLS)
26/05Não haverá aula.
28/05 Apresentações: Temperature-Aware Computer Systems e The Cilk Project
02/06 Apresentações: Qualidade de serviço em CMPs e Branch Predictors
04/06 Apresentações: Linguagens de Programação, APIs e outras ferramentas para programação paralela e Comparação de modelos de memória para multicores
09/06 Apresentações: Coerência de Caches e Virtualização
11/06 Apresentações: Intel Threading Building Blocks (TBB) e Auto Paralelização
16/06 Apresentações: UltraSPARC T2 (Niágara 2) e Escalonamento em arquiteturas multicores
18/06 Prazo final para entrega do Trabalho 3. Apresentações: Programação para GPU's e Paralelização de Traces de Execução
23/06 Apresentação do Trabalho 3. Apresentações: Simultaneous Multithreading (SMT) e Comunicação em Arquiteturas Multicore
25/06 Apresentação do Trabalho 3
07/07 Exame (apenas para os alunos de graduação)