A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

MPI – Message Passing Interface Algumas Funções. Funções básicas As 6 funções que permitem escrever muitos dos programas: MPI_Init -- inicia a computação.

Apresentações semelhantes


Apresentação em tema: "MPI – Message Passing Interface Algumas Funções. Funções básicas As 6 funções que permitem escrever muitos dos programas: MPI_Init -- inicia a computação."— Transcrição da apresentação:

1 MPI – Message Passing Interface Algumas Funções

2 Funções básicas As 6 funções que permitem escrever muitos dos programas: MPI_Init -- inicia a computação MPI_Finalize -- finaliza a computação MPI_Comm_size -- determina o número de processos MPI_Comm_rank -- identifica o processo MPI_Send -- envia uma mensagem MPI_Recv -- recebe uma mensagem

3 Funções para iniciar e finalizar MPI_Init(&argc, &argv) -- inicia a computação MPI_Finalize ( ) -- finaliza a computação

4 Duas funções especiais MPI_COMM_SIZE(comm, size) comm -- comunicador size -- nº de processadores disponíveis (inteiro) MPI_COMM_SIZE (comm, pid ) comm -- comunicador size -- identifica o processador (inteiro)

5 Send / Receive MPI_Send(start, count, datatype, dest, tag, comm) start -- void* (conteúdo da mensagem) count -- int (determina o espaço necessário para guardar a meng. datatype -- MPI_Datatype (indica o tipo de dados da mensagem) dest (source) -- int (indica o nº do processo que recebe (envia) ) tag -- int (uma etiqueta para quem recebe o quê) comm -- MPI_Comm (indica a comunicação MPI_COMM_WORLD) MPI_Recv(start, count, datatype, source, tag, comm, status) status -- MPI_Status (fornece informação sobre os dados enviados e seu tamanho; por exemplo MPI_ANY_SOURCE refere o nº do processo que envia a mensagem )

6 REDUCE Operacão de redução MPI_Reduce( void*, void*, int, MPI_Datatype, MPI_Op, int, MPI_Comm ) void* -- operando void* -- resultado Int -- count MPI_Datatype – datatype MPI_Op – operação int -- root MPI_Comm -- comm ExemplosMPI_Op: MPI_MAX; MPI_SUM; MPI_PROD;…;MPI_LAND;...

7 BRODCAST Operacão de comunicação – um processador (rank root) envia uma mensagem para todos os restantes processadores. Deve ser chamada por todos os processadores com os mesmos argumentos para root e count. MPI_Bcast(void*, int, MPI_Datatype, int root, MPI_Comm comm) void* -- mensagem Int -- count MPI_Datatype – datatype int -- root MPI_Comm -- comm

8 ALLREDUCE Operacão de redução e comunicação(reduce+brodcast) MPI_Allreduce(void*, void*, int, MPI_Datatype, MPI_Op, MPI_Comm ) void* -- operando void* -- resultado Int -- count MPI_Datatype – datatype MPI_Op – operação MPI_Comm -- comm

9 Gather Operacão de comunicação – recolhe dados de diferentes processadores num processador (rank root) MPI_Gather (void*, int, MPI_Datatype, void*, int, MPI_Datatype, int, MPI_Comm ) void* -- send_data Int -- send_count MPI_Datatype – send_datatype void* -- recv_data Int -- recv_count MPI_Datatype – recv_datatype Int -- root MPI_Comm -- comm

10 Scatter Operacão de comunicação -- distribui dados de um processador por diferentes processadores (operação inversa de MPI_Gather) MPI_Scatter (void*, int, MPI_Datatype, void*, int, MPI_Datatype, int, MPI_Comm ) void* -- send_data Int -- send_count MPI_Datatype – send_datatype void* -- recv_data Int -- recv_count MPI_Datatype – recv_datatype Int -- root MPI_Comm -- comm


Carregar ppt "MPI – Message Passing Interface Algumas Funções. Funções básicas As 6 funções que permitem escrever muitos dos programas: MPI_Init -- inicia a computação."

Apresentações semelhantes


Anúncios Google