Disciplinas Obrigatórias
9° período
Código:
BiSuCOM.540
Nome da disciplina:
Programação Paralela e Distribuída
Carga horária total:
60 h
Abordagem metodológica:
Teórica
Natureza:
Obrigatória
Carga horária teórica:
30 h
Carga horária prática:
30 h
Ementa:
Fundamentos da programação paralela e distribuída. Arquiteturas de programação paralela. Projeto de algoritmos paralelos e distribuídos. Compartilhamento de memória e passagem de mensagens. Sincronização e controle de concorrência. Coordenação de processos. Programação assíncrona. Programação heterogênea. Computação em nuvem. Aplicações práticas com programação paralela e distribuída. Performance e desempenho. Sistemas distribuídos.

Objetivo(s):

Objetivo Geral:

Avaliar e criar soluções com computação paralela e distribuída.

Objetivos Específicos:

Explicar os fundamentos e arquiteturas da programação paralela e distribuída. Selecionar mecanismos adequados para coordenação, sincronização e controle de concorrência. Produzir aplicações que utilizem programação assíncrona ou heterogênea. Elaborar soluções com utilização de computação em nuvem e sistemas distribuídos.

Bibliografia básica:

TANENBAUM, Andrew S.. Sistemas distribuídos: Princípios e paradigmas. 2. ed. São Paulo: Pearson Prentice Hall, 2007. 416 p. ISBN 9788576051428. Disponível em <https://pergamum.ifmg.edu.br/acervo/5009495>. Acesso em: 11 de Setembro de 2024.

STALLINGS, William. Arquitetura e Organização de Computadores: Projeto para o desempenho. 8. ed. São Paulo: Pearson Pratice Hall, 2010. 642 p. ISBN 9788576055648. Disponível em <https://pergamum.ifmg.edu.br/acervo/5001615/>. Acesso em: 24 de Setembro de 2024.

Matloft, Norm. Programming on Parallel Machines. 1. ed. Davis: University of California, 2017. 338 p. Disponível em <https://pergamum.ifmg.edu.br/acervo/108539>. Acesso em: 3 de Outubro de 2024.

Bibliografia complementar:

COULOURIS, George F.; DOLLIMORE, Jean; KINDBERG, Tim; BLAIR, Gordon. Sistemas Distribuídos: Conceitos e projetos. 5. ed. Porto Alegre: Bookman, 2013. 1048 p. ISBN 9788582600535. Acervo: 005.4476 S623 2013.

KIRK, David B.; HWU, Wen-Mei W.. Programando para processadores paralelos: Uma abordagem prática à programação de GPU. 1. ed. Rio de Janeiro: Campus, 2011. 212 p. ISBN 9788535241884. Acervo: 004.35 K59p 2011.

STUART, Brian L.. Princípios de sistemas operacionais: Projetos e aplicações. 1. ed. São Paulo: Cengage Learning, 2011. 655 p. ISBN 9788522107339. Acervo: 005.43 S929p.

HWANG, Wen-Jyi. Recent Progress in Parallel and Distributed Computing. 1. ed. Rijeka: IntechOpen, 2017. 124 p. ISBN 978-953-51-3316-2. Disponível em <https://doi.org/10.5772/65177>. Acesso em: 2 de Outubro de 2024.

ROS, Alberto. Parallel and Distributed Computing. 1. ed. Rijeka: IntechOpen, 2010. 298 p. ISBN 978-953-51-5909-4. Disponível em <https://doi.org/10.5772/229>. Acesso em: 2 de Outubro de 2024.