Manual de utilização do ambiente de processamento paralelo do LAD

O presente documento tem como objetivo orientar e instruir os usuários do Laboratório de Alto Desempenho da PUCRS, do PUCRS Ideia, sobre a utilização do laboratório.
Em caso de dúvidas, pode entrar em contato via e-mail: contato.lad@pucrs.br ou suporte.lad@pucrs.br.

6.1. Compilação e execução de aplicações com MPI

Por padrão, processos mpi são gerados com o comando “mpirun”, no caso do LAD isso só ocorre caso as bibliotecas mpi utilizadas sejam diferentes da padrão do sistema. Caso contrário, deve-se utilizar o “srun”, um comando do Slurm para disparar processos, que está integrado à biblioteca mpi padrão. Para compilar um programa com OpenMPI, a sintaxe segue a linguagem em que o programa foi escrito (c ou c++).

Sintaxe para programas em c:

user@cluster:~$ mpicc -o <programa> <script.c>


Sintaxe para programas em c++:

user@cluster:~$ mpic++ -o <programa> <script.cpp>


No exemplo abaixo o script “program_mpi.c” é compilado com OpenMPI e depois executado com o comando “srun”:

user@pantanal:~$ mpicc -o program\_mpi program\_mpi.c
user@pantanal:~$ srun -N 2 -n 96 ./program\_mpi


Esse comando dispara 96 processos da aplicação “program_mpi”, sendo dividos em duas máquinas com limite de 48 processos cada. Informações e estratégias de otimização estão descritas no Anexo III - Otimização com Hyper-threading.