Compartir a través de


función MPI_Ibcast

Difunde un mensaje desde el proceso con clasificación "raíz" a todos los demás procesos del comunicador de forma no bloqueada.

Sintaxis

int MPIAPI MPI_Ibcast(
  _Inout_  void        *buffer,
  _In_    int          count,
  _In_    MPI_Datatype datatype,
  _In_    int          root,
  _In_    MPI_Comm     comm,
  _Out_   MPI_Request  *request
);

Parámetros

  • de búfer [in, out]
    Puntero al búfer de datos. En el proceso especificado por el parámetro raíz, el búfer contiene los datos que se van a difundir. En todos los demás procesos del comunicador especificados por el parámetro comm, el búfer recibe la difusión de datos por el proceso raíz. del búfer consta de recuento elementos sucesivos del MPI_Datatype indicados por el identificador de tipo de datos . La longitud del mensaje se especifica en términos de número de elementos, no el número de bytes.

  • recuento [in]
    Número de elementos de datos en el búfer. Si el recuento parámetro es cero, la parte de datos del mensaje está vacía.

  • de tipo de datos [in]
    Identificador MPI_Datatype que representa el tipo de datos de cada elemento de búfer.

  • raíz [in]
    Rango del proceso dentro del MPI_Comm enviar búfer.

  • comm [in]
    Identificador del comunicador MPI_Comm.

  • solicitud [out]
    MPI_Request identificador que representa la operación de comunicación.

Valor devuelto

Devuelve MPI_SUCCESS si se ejecuta correctamente. De lo contrario, el valor devuelto es un código de error.

En Fortran, el valor devuelto se almacena en el parámetro IERROR.

Fortran

    MPI_IBCAST(BUFFER, COUNT, DATATYPE, ROOT, COMM, REQUEST, IERROR)
        <type> BUFFER(*)  
        INTEGER COUNT, DATATYPE, ROOT, COMM, REQUEST, IERROR

Observaciones

Una llamada sin bloqueo inicia una operación de difusión colectiva que debe completarse en una llamada de finalización independiente. Una vez iniciada, la operación puede avanzar independientemente de cualquier cálculo u otra comunicación en los procesos participantes. De esta manera, las operaciones de difusión sin bloqueo pueden mitigar los posibles efectos de sincronización de las operaciones de difusión ejecutándolas en el "fondo".

Todas las llamadas de finalización (por ejemplo, MPI_Wait) se admiten para operaciones de difusión sin bloqueo.

Requisitos

Producto

Microsoft MPI v6

Encabezado

Mpi.h; Mpif.h

Biblioteca

Msmpi.lib

DLL

Msmpi.dll

Consulte también

funciones colectivas de MPI

MPI_Bcast

MPI_Datatype

MPI_Test

MPI_Testall

MPI_Testany

MPI_Testsome

MPI_Wait

MPI_Waitall

MPI_Waitany

MPI_Waitsome

MPI_Comm