shmem_addr_accessible(3)

shmem_addr_accessible - Determines whether an address is accessible via SHMEM data transfers operations from the specified remote processing element (PE)

As shipped in IRIX 6.5.30. Added in IRIX 6.5.22.

NAME
     shmem_addr_accessible - Determines whether an address is accessible
     via SHMEM data transfers operations from the specified remote
     processing element (PE)

SYNOPSIS
     C:

        #include <mpp/shmem.h>

        int shmem_addr_accessible(void *addr, int pe);

     Fortran:

        #include <mpp/shmem.fh>

        LOGICAL LOG, SHMEM_ADDR_ACCESSIBLE

        INTEGER pe

        LOG = SHMEM_ADDR_ACCESSIBLE(addr, pe)

DESCRIPTION
     shmem_addr_accessible is a query function that indicates whether a
     local address is accessible via SHMEM operations from the specified
     remote PE.

     This function verifies that the remote PE is accessible via SHMEM data
     transfer functions from the local PE, and that the specified address
     is in a symmetric data segment with respect to the remote PE.

     On SGI Altix 3000 series systems, for multiple executable MPI
     applications that use SHMEM functions, it is important to note that
     static memory, such as a Fortran common block or C global variable, is
     symmetric between processes running from the same executable file, but
     is not symmetric between processes running from different executable
     files.  Data allocated from the symmetric heap (shmalloc or shpalloc)
     is symmetric across the same or different executable files.

RETURN VALUES
     C:        The return value is 1 if addr is a symmetric data object and
               accessible via SHMEM operations from the specified remote
               PE; otherwise,it is 0.

     Fortran:  The return value is .TRUE. if addr is a symmetric data
               object and accessible via SHMEM operations from the
               specified remote PE; otherwise, it is .FALSE..

NOTES
     This routine was introduced in MPT 1.8 (LIBSMA 4.1).  If backward
     compatability with earlier versions of the LIBSMA software is
     required, this routine should not be used.

SEE ALSO
     intro_shmem(3), shmem_pe_accessible(3)