Remember to maintain security and privacy. Do not share sensitive information. Procedimento.com.br may make mistakes. Verify important information. Termo de Responsabilidade
O MPI (Message Passing Interface) é um padrão amplamente utilizado para programação paralela em sistemas de computação de alto desempenho. O MPI_Finalize é uma função crucial dentro desse padrão, responsável por finalizar o ambiente MPI. Neste artigo, vamos explorar como utilizar o MPI_Finalize em um ambiente Linux, com exemplos práticos.
MPI_Finalize é uma função que encerra o ambiente MPI que foi iniciado com MPI_Init. Ela deve ser chamada por todos os processos MPI antes de saírem do programa. Isso garante que todos os recursos alocados pelo MPI sejam liberados adequadamente.
Vamos criar um programa simples em C que utiliza MPI para ilustrar o uso do MPI_Finalize. Certifique-se de ter o OpenMPI instalado em seu sistema Linux para compilar e executar o exemplo.
#include <mpi.h>
#include <stdio.h>
int main(int argc, char** argv) {
// Inicializa o ambiente MPI
MPI_Init(&argc, &argv);
// Obtém o número total de processos
int world_size;
MPI_Comm_size(MPI_COMM_WORLD, &world_size);
// Obtém o rank do processo atual
int world_rank;
MPI_Comm_rank(MPI_COMM_WORLD, &world_rank);
// Imprime uma mensagem de "Hello World" de cada processo
printf("Hello world from process %d of %d\n", world_rank, world_size);
// Finaliza o ambiente MPI
MPI_Finalize();
return 0;
}
1. Compilação: Use o mpicc
para compilar o programa. Este é o compilador do OpenMPI para código C.
mpicc -o hello_mpi hello_mpi.c
2. Execução: Use o mpirun
para executar o programa com o número desejado de processos. Por exemplo, para executar com 4 processos:
mpirun -np 4 ./hello_mpi
O uso correto de MPI_Finalize é essencial para garantir que os programas MPI sejam encerrados de maneira limpa, liberando todos os recursos alocados. Este exemplo básico demonstra como configurar um ambiente MPI, executar um programa paralelo e finalizar corretamente o ambiente.