Última alteração: 9 de Outubro de 2002
Professor: Nivio Ziviani
Monitora: Claudine Santos Badue
4 Trabalho Prático - 20/08/02 - 10 pontos
Data de Entrega: 13/09/02
Penalização por Atraso: 1 ponto até 18/09/02 mais 1 ponto por dia
a seguir
Observação: Toda a documentação deverá ser apresentada como uma página
acessível via Web (apresente o link para acesso à documentação).
Computação Paralela
O objetivo deste trabalho é o de projetar um algoritmo paralelo para ser executado em uma máquina paralela. A implementação deve ser feita usando sockets e threads para comunicação entre o processo mestre e os processos escravos. Veja como criar um processo mestre , um processo escravo , e o arquivo makefile para compilá-los.
Implemente um algoritmo paralelo para realizar multiplicação de matrizes usando uma máquina paralela MIMD. Você deverá discutir as diversas possibilidades de implementação descritas no capítulo 7 do livro do Quinn (1994) e escolher a mais adequada à arquitetura paralela MIMD. Alternativamente, além de discutir as possibilidades descritas na literatura, você poderá propor e implementar sua própria estratégia de paralelização do problema.
A máquina paralela MIMD deverá ser do tipo rede de estações de trabalho. (NOW - Network Of Workstations) (Anderson, Culler e Patterson, 1995).
O que deve ser apresentado:
Critérios a serem utilizados na avaliação:
Obs.: Toda a fase de depuração deverá ser executada em uma única estação de trabalho, até que seu programa esteja inteiramente depurado. Apenas a fase de estudos do speedup deverá ser realizada utilizando a rede do DCC.
Referências
[Q] M. J. Quinn, Parallel Computing Theory and Practice, McGraw-Hill, 1994, cap. 12.
T. Anderson and D. Culler and D. Patterson
``A Case for NOW (Network of Workstations)'',
IEEE Micro, vol. 15, no. 1, 1995, pp. 54-64.
Nivio Ziviani