18.3.39. pmix_geometry_t
pmix_geometry_t — Describes the fabric coordinates of a specified device
18.3.39.1. SYNTAX
18.3.39.1.1. C Syntax
#include <pmix_common.h>
typedef struct pmix_geometry {
size_t fabric;
char *uuid;
char *osname;
pmix_coord_t *coordinates;
size_t ncoords;
} pmix_geometry_t;
18.3.39.2. DESCRIPTION
The pmix_geometry_t structure describes the fabric coordinates of a specified fabric device, associating a device with its coordinates in one or more views.
The fabric field is the index of the fabric (fabric plane) with which the
device is associated.
The uuid field is a string containing the universally unique identifier of
the fabric device.
The osname field is a string containing the operating-system name of the
fabric device (e.g., the local device name).
The coordinates field points to an array of ncoords
pmix_coord_t(5) structures giving the device’s
coordinates. A device may have more than one coordinate, since a coordinate is
expressed in a particular view (see
pmix_coord_view_t(5)). The ncoords field
gives the number of elements in the coordinates array.
All coordinate values are expressed as unsigned integers, as their units are defined in terms of fabric devices rather than physical distances; a coordinate is therefore an indicator of connectivity, and not of relative communication distance. Fabric coordinates must be unique within a given view and are logically grouped within the node realm.
The PMIX_GEOMETRY_STATIC_INIT macro is provided to statically initialize a
pmix_geometry_t structure.
18.3.39.3. STATIC INITIALIZER
A statically declared pmix_geometry_t may be initialized with the
PMIX_GEOMETRY_STATIC_INIT macro, which sets fabric and ncoords to 0 and uuid, osname, and coordinates to NULL:
pmix_geometry_t geometry = PMIX_GEOMETRY_STATIC_INIT;