MPI_LOOKUP_NAME(3)				     Open MPI					MPI_LOOKUP_NAME(3)

	  MPI_Lookup_name - Finds port associated with a service name

SYNTAX
   C Syntax
	  #include <mpi.h>

	  int MPI_Lookup_name(const char *service_name, MPI_Info info,
	       char *port_name)

   Fortran Syntax
	  USE MPI
	  ! or the older form: INCLUDE 'mpif.h'
	  MPI_LOOKUP_NAME(SERVICE_NAME, INFO, PORT_NAME, IERROR)
	       CHARACTER*(*)   SERVICE_NAME, PORT_NAME
	       INTEGER	       INFO, IERROR

   Fortran 2008 Syntax
	  USE mpi_f08
	  MPI_Lookup_name(service_name, info, port_name, ierror)
	       CHARACTER(LEN=*), INTENT(IN) :: service_name
	       TYPE(MPI_Info), INTENT(IN) :: info
	       CHARACTER(LEN=MPI_MAX_PORT_NAME), INTENT(OUT) :: port_name
	       INTEGER, OPTIONAL, INTENT(OUT) :: ierror

INPUT PARAMETERS
       • service_name: A service name (string).

       • info: Options to the name service functions (handle).

OUTPUT PARAMETERS
       • port_name: a port name (string).

       • ierror: Fortran only: Error status (integer).

DESCRIPTION
       This   function	 retrieves   a	port_name  published  under  service_name  by  a  previous  invocation	of
       MPI_Publish_name <#mpi-publish-name>. The application must supply a port_name buffer large enough  to  hold
       the largest possible port name (i.e., MPI_MAX_PORT_NAME bytes).

INFO ARGUMENTS
       The following keys for info are recognized:

	  Key			Type	  Description
	  ---			----	  -----------

	  ompi_lookup_order	char *	  Resolution order for name lookup.

       The  ompi_lookup_order  info  key  can  specify one of four valid string values (see the NAME SCOPE section
       below for more information on name scopes):

       local: Only search the local scope for name resolution.

       global: Only search the global scope for name resolution.

       local,global: Search the local scope for name resolution. If
	      not found, try searching the global scope for name resolution. This behavior is the default  if  the
	      ompi_lookup_order info key is not specified.

       global,local: Search the global scope for name resolution. If
	      not found, try searching the local scope for name resolution.

       If no info key is provided, the search will first check to see if a global server has been specified and is
       available.  If  so,  then  the search will default to global scope first, followed by local. Otherwise, the
       search will default to local.

NAME SCOPE
       Open MPI supports two name scopes: global and local. Local scope values are placed in a data store  located
       on  the mpirun of the calling process’ job, while global scope values reside on a central server.  Calls to
       MPI_Unpublish_name <#mpi-unpublish-name> must correctly specify the scope to be used in finding	the  value
       to  be  removed.	 The  function	will  return  an  error	 if the specified service name is not found on the
       indicated location.

       For a more detailed description of scoping rules, please see the MPI_Publish_name  <#mpi-publish-name>  man
       page.

ERRORS
       Almost  all MPI routines return an error value; C routines as the return result of the function and Fortran
       routines in the last argument.

       Before the error value is returned, the current MPI error handler associated with the communication  object
       (e.g.,  communicator, window, 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>/MPI_Init_thread <#mpi-init-thread>,
       after MPI_Finalize <#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 <#
       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>/MPI_Comm_spawn_multiple	<#
       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.

       • 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 if MPI_Abort <#mpi-abort> was called on that communicator. If called
	 on  a window or file, acts as if MPI_Abort <#mpi-abort> was called on a communicator containing the group
	 of processes in the corresponding window or file. If called on a session, aborts only the local process.

       • MPI_ERRORS_RETURN Returns an error code to the application.

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

       • MPI_Comm_create_errhandler	<#mpi-comm-create-errhandler>	  then	   MPI_Comm_set_errhandler	<#
	 mpi-comm-set-errhandler>

       • MPI_File_create_errhandler	 <#mpi-file-create-errhandler>	   then	    MPI_File_set_errhandler	<#
	 mpi-file-set-errhandler>

       • MPI_Session_create_errhandler	 <#mpi-session-create-errhandler>   then   MPI_Session_set_errhandler	<#
	 mpi-session-set-errhandler> or at MPI_Session_init <#mpi-session-init>

       • MPI_Win_create_errhandler	<#mpi-win-create-errhandler>	  then	    MPI_Win_set_errhandler	<#
	 mpi-win-set-errhandler>

       Note that MPI does not guarantee that an MPI program can continue past an error.

       See the MPI man page <#open-mpi> for a full list of MPI error codes <#open-mpi-errors>.

       See the Error Handling section of the MPI-3.1 standard for more information.

       See also:

	  • MPI_Publish_name <#mpi-publish-name>

	  • MPI_Open_port <#mpi-open-port>

Copyright
       2003-2026, The Open MPI Community

						   Mar 05, 2026					MPI_LOOKUP_NAME(3)
