hwlocality_creation - Man Page

Topology Creation and Destruction

Synopsis

Typedefs

typedef struct hwloc_topology * hwloc_topology_t

Functions

int hwloc_topology_init (hwloc_topology_t *topologyp)
int hwloc_topology_load (hwloc_topology_t topology)
void hwloc_topology_destroy (hwloc_topology_t topology)
int hwloc_topology_dup (hwloc_topology_t *newtopology, hwloc_topology_t oldtopology)
int hwloc_topology_abi_check (hwloc_topology_t topology)
void hwloc_topology_check (hwloc_topology_t topology)

Detailed Description

Typedef Documentation

typedef struct hwloc_topology* hwloc_topology_t

Topology context​. To be initialized with hwloc_topology_init() and built with hwloc_topology_load()​.

Function Documentation

int hwloc_topology_abi_check (hwloc_topology_t topology)

Verify that the topology is compatible with the current hwloc library​. This is useful when using the same topology structure (in memory) in different libraries that may use different hwloc installations (for instance if one library embeds a specific version of hwloc, while another library uses a default system-wide hwloc installation)​.

If all libraries/programs use the same hwloc installation, this function always returns success​.

Returns

0 on success​.

-1 with errno set to EINVAL if incompatible​.

Note

If sharing between processes with hwloc_shmem_topology_write(), the relevant check is already performed inside hwloc_shmem_topology_adopt()​.

void hwloc_topology_check (hwloc_topology_t topology)

Run internal checks on a topology structure​. The program aborts if an inconsistency is detected in the given topology​.

Parameters

topology is the topology to be checked

Note

This routine is only useful to developers​.

The input topology should have been previously loaded with hwloc_topology_load()​.

void hwloc_topology_destroy (hwloc_topology_t topology)

Terminate and free a topology context​.

Parameters

topology is the topology to be freed

int hwloc_topology_dup (hwloc_topology_t * newtopology, hwloc_topology_t oldtopology)

Duplicate a topology​. The entire topology structure as well as its objects are duplicated into a new one​.

This is useful for keeping a backup while modifying a topology​.

Returns

0 on success, -1 on error​.

Note

Object userdata is not duplicated since hwloc does not know what it point to​. The objects of both old and new topologies will point to the same userdata​.

int hwloc_topology_init (hwloc_topology_t * topologyp)

Allocate a topology context​.

Parameters

topologyp is assigned a pointer to the new allocated context​.

Returns

0 on success, -1 on error​.

int hwloc_topology_load (hwloc_topology_t topology)

Build the actual topology​. Build the actual topology once initialized with hwloc_topology_init() and tuned with Topology Detection Configuration and Query and Changing the Source of Topology Discovery routines​. No other routine may be called earlier using this topology context​.

Parameters

topology is the topology to be loaded with objects​.

Returns

0 on success, -1 on error​.

Note

On failure, the topology is reinitialized​. It should be either destroyed with hwloc_topology_destroy() or configured and loaded again​.

This function may be called only once per topology​.

The binding of the current thread or process may temporarily change during this call but it will be restored before it returns​.

See also

Topology Detection Configuration and Query and Changing the Source of Topology Discovery

Author

Generated automatically by Doxygen for Hardware Locality (hwloc) from the source code​.

Info

Version 2.14.0 Hardware Locality (hwloc)