MPI_OPEN_PORT(3)
π MPI_OPEN_PORT(3) π
okay bestie, welcome to the Open MPI manual, and today's main character is MPI_Open_port β literally the glow-up that gives your server an address so clients can slide into its DMs. π«Ά
β¨ NAME β¨
MPI_Open_port β establishes a network address for a server to accept connections from clients. no cap, that's the whole vibe. π
πΈ SYNTAX πΈ
π» C Syntax
#include <mpi.h>
int MPI_Open_port(MPI_Info info, char *port_name)
π§ Fortran Syntax
USE MPI
! or the older form: INCLUDE 'mpif.h'
MPI_OPEN_PORT(INFO, PORT_NAME, IERROR)
CHARACTER*(*) PORT_NAME
INTEGER INFO, IERROR
π¦ Fortran 2008 Syntax
USE mpi_f08
MPI_Open_port(info, port_name, ierror)
TYPE(MPI_Info), INTENT(IN) :: info
CHARACTER(LEN=MPI_MAX_PORT_NAME), INTENT(OUT) :: port_name
INTEGER, OPTIONAL, INTENT(OUT) :: ierror
π INPUT PARAMETER π
infoβ the options for how to establish an address (it's a handle). and the plot twist? no options are currently supported, so it's giving "bring nothing to the function" energy. π
β OUTPUT PARAMETERS β
port_nameβ the newly established port, as a string. this is the shiny new address, bestie. π₯ierrorβ Fortran only: the error status, an integer. π
π DESCRIPTION π
MPI_Open_port establishes a network address β encoded all cute inside the port_name string β at which the server will be able to accept connections from clients. port_name is supplied by the system, not by you, so don't try to freelance it. π
MPI copies a system-supplied port name into port_name. that port_name identifies the newly opened port and can be used by a client to contact the server. and the maximum size string that may be supplied by the system is MPI_MAX_PORT_NAME β that's the ceiling, periodt. π
π SUPPORTED INFO KEYS π
None. that's it. that's the section. π
π ERRORS π
Almost all MPI routines return an error value, bestie β C routines hand it back as the return result of the function, and Fortran routines stash it in the last argument. π¬
Before the error value is returned, the current MPI error handler associated with the communication object (like, a communicator, window, or file) is called. If no communication object is associated with the MPI call, then the call is considered attached to MPI_COMM_SELF and will call the associated MPI error handler. When MPI_COMM_SELF is not initialized (i.e., before MPI_Init/MPI_Init_thread, after MPI_Finalize, or when 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 using the World model, or the mpi_initial_errhandler CLI argument to mpiexec or info key to MPI_Comm_spawn/MPI_Comm_spawn_multiple. If no other appropriate error handler has been set, then the MPI_ERRORS_RETURN error handler is called for MPI I/O functions and the MPI_ERRORS_ABORT error handler is called for all other MPI functions. π
Open MPI includes three predefined error handlers that can be used:
MPI_ERRORS_ARE_FATALβ causes the program to abort all connected MPI processes. yeah. everyone. it's a lot. πMPI_ERRORS_ABORTβ an error handler that can be invoked on a communicator, window, file, or session. When called on a communicator, it acts as ifMPI_Abortwas called on that communicator. If called on a window or file, it acts as ifMPI_Abortwas called on a communicator containing the group of processes in the corresponding window or file. If called on a session, it aborts only the local process. π«ΆMPI_ERRORS_RETURNβ returns an error code to the application. the chill one. β¨
MPI applications can also implement their own error handlers by calling:
MPI_Comm_create_errhandlerthenMPI_Comm_set_errhandlerMPI_File_create_errhandlerthenMPI_File_set_errhandlerMPI_Session_create_errhandlerthenMPI_Session_set_errhandleror atMPI_Session_initMPI_Win_create_errhandlerthenMPI_Win_set_errhandler
β οΈ note that MPI does not guarantee that an MPI program can continue past an error. so likeβ¦ don't be shocked, bestie. π
See the MPI man page for a full list of MPI error codes. π
See the Error Handling section of the MPI-3.1 standard for more information. π
π SEE ALSO π
MPI_Comm_acceptMPI_Comm_connect
π COPYRIGHT π
Copyright 2003-2026, The Open MPI Community. π
and that's the tea, bestie β this page is from the Open MPI manual, dated Sep 11, 2026, brought to you by The Open MPI Community (copyright 2003-2026). slay, stay connected, and may your ports always be open. πβ¨π¦
π¦ where this page comes from
- arch rolling: openmpi 5.0.11-1 Β· BSD-3-Clause AND LicenseRef-MPICH
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms