MPI_PREADY_LIST(3)

πŸ“¦
version 5.0.10 Β· 4 versions
, in ubuntu stonking

πŸ’– MPI_Pready_list β€” the Open MPI page, bestie edition πŸ’–

ok so like, you know how the man page is called MPI_Pready_list and it lives in the Open MPI manual (section 3, the library calls, iykyk)? yeah. that's the whole vibe. we're doing this.


✨ NAME ✨

MPI_Pready_list β€” tells everyone that a list of send-side partitions is ready to be transferred. that's it. that's the job. πŸ’…


🌸 SYNTAX 🌸

C Syntax

#include <mpi.h>

int MPI_Pready_list(int length, int *partitions, MPI_Request request)

Fortran Syntax

USE MPI
! or the older form: INCLUDE 'mpif.h'
MPI_PREADY_LIST(LENGTH, PARTITIONS, REQUEST, IERROR)
     INTEGER LENGTH, PARTITIONS(*), REQUEST, IERROR

Fortran 2008 Syntax

USE mpi_f08
MPI_Pready_list(length, partitions, request, ierror)
        INTEGER, INTENT(IN) :: length
     INTEGER, INTENT(IN) :: partitions
     TYPE(MPI_Request), INTENT(IN) :: request
     INTEGER, OPTIONAL, INTENT(OUT) :: ierror

πŸŽ€ INPUT PARAMETERS πŸŽ€

  • length β€” how long your partition array is, bestie. an integer, no cap.
  • partitions β€” the actual array of partition numbers you're marking ready for transfer. also an integer.
  • request β€” the communication request handle. the little receipt of the whole operation fr fr.

🫢 OUTPUT PARAMETERS 🫢

  • ierror β€” Fortran girlies only: your error status, an integer.

πŸ’€ ERRORS πŸ’€

ok so basically almost every MPI routine hands you back an error value. in C it's the return value of the function, in Fortran it's that last argument. iconic behaviour honestly.

before that error value even gets to you, Open MPI calls the current MPI error handler attached to the communication object (think: communicator, window, file β€” the whole squad). and if there's like, no communication object attached to the MPI call at all? then the call is considered attached to MPI_COMM_SELF and it'll call that associated MPI error handler. and when MPI_COMM_SELF isn't even initialized (so β€” before MPI_Init/MPI_Init_thread, after MPI_Finalize, or when you're using the Sessions Model exclusively), the error raises the initial error handler. the initial error handler can be changed by calling MPI_Comm_set_errhandler on MPI_COMM_SELF when you're using the World model, OR by the mpi_initial_errhandler CLI argument to mpiexec, OR by the info key to MPI_Comm_spawn/MPI_Comm_spawn_multiple. and if literally no other appropriate error handler has been set, then MPI_ERRORS_RETURN gets called for MPI I/O functions and MPI_ERRORS_ABORT gets called for all other MPI functions. that's just how it is. πŸ’…

Open MPI ships three predefined error handlers you can vibe with:

  • MPI_ERRORS_ARE_FATAL β€” causes the program to abort all connected MPI processes. dramatic. main character exit. 😭
  • MPI_ERRORS_ABORT β€” an error handler you can invoke on a communicator, window, file, or session. when it's called on a communicator, it acts as if MPI_Abort was called on that communicator. if it's called on a window or file, it acts as if MPI_Abort was called on a communicator containing the group of processes in the corresponding window or file. if it's called on a session, it aborts only the local process β€” just you, bestie.
  • MPI_ERRORS_RETURN β€” returns an error code to the application. polite queen behaviour. πŸ‘‘

MPI applications can also implement their own error handlers by calling:

  • MPI_Comm_create_errhandler then MPI_Comm_set_errhandler
  • MPI_File_create_errhandler then MPI_File_set_errhandler
  • MPI_Session_create_errhandler then MPI_Session_set_errhandler or at MPI_Session_init
  • MPI_Win_create_errhandler then MPI_Win_set_errhandler
⚠️ and a lil note, bestie: MPI does not guarantee that an MPI program can continue past an error. so like… be careful out there. πŸ™ˆ

see the MPI man page for a full list of MPI error codes, and the Error Handling section of the MPI-3.1 standard for more info.

See also:

  • MPI_Pready
  • MPI_Pready_range
  • MPI_Parrived

2003-2026, The Open MPI Community


that's the whole page, bestie πŸ¦‹ so to recap: this was MPI_PREADY_LIST(3) from the Open MPI crew, copyright 2003-2026, The Open MPI Community, and this lil beauty was dated Sep 10, 2026. slay. periodt. πŸ’œβœ¨

πŸ“¦ where this page comes from