Paralelização em mecânica dos fluidos computacional usando HPF - Alves, Luís M. (2010)
Neste trabalho realizou-se a paralelização de um programa de Mecânica dos Fluidos Computacional, baseado no algoritmo SIMPLE, usando a linguagem HPF (High Performance Fortran). O HPF é uma extensão do Fortran 90 que usa o paradigma de programação data parallel, e permite a paralelização para sistemas SMP (Symmetric Multiple Processing) e clusters SMP. As simulações foram realizadas no cluster Bewolf existente na Faculdade de Engenharia da Universidade do Porto. Este cluster é constituído por 23 processadores Intel PIII (o master com velocidade de processamento de 550 MHz e os restantes 22 com 450 MHz) ligados por uma rede ethernet dedicada. Cada processador possui uma placa de 100 Mbit/s. O HPF mostrou-se uma linguagem de fácil utilização, permitindo uma rápida adaptação de códigos sequenciais para códigos paralelos. Ao contrário de outras técnicas de paralelização, no HPF as comunicações necessárias à execução de um código paralelo são implementadas pelo compilador, pelo que a modificação do nível de paralelização (número de processadores usados) pode ser conseguida por uma simples alteração de um parâmetro no código fonte. Assim, o HPF é uma técnica de paralelização com baixos custos de manutenção, permitindo com grande facilidade a alteração do código para novas situações de cálculo. No entanto, o HPF mostrou-se menos eficiente que por exemplo a técnica de decomposição de domínio usando message passing, não sendo a ferramenta ideal quando o principal objectivo da paralelização é maximizar o desempenho. Em particular, na simulação do escoamento de uma caixa bidimensional com tampa deslizante, obtiveram-se speed-ups de 0.42 para corridas com dois processadores e uma malha de 800 X 800 nós. A maior eficiência obtida no trabalho presente foi de 67% para 2 processadores.