Hardware Locality (hwloc)
2.4.1
|
#include <plugins.h>
Data Fields | |
const char * | name |
unsigned | phases |
unsigned | excluded_phases |
struct hwloc_backend *(* | instantiate )(struct hwloc_topology *topology, struct hwloc_disc_component *component, unsigned excluded_phases, const void *data1, const void *data2, const void *data3) |
unsigned | priority |
unsigned | enabled_by_default |
Discovery component structure.
This is the major kind of components, taking care of the discovery. They are registered by generic components, either statically-built or as plugins.
unsigned hwloc_disc_component::enabled_by_default |
Enabled by default. If unset, if will be disabled unless explicitly requested.
unsigned hwloc_disc_component::excluded_phases |
Component phases to exclude, as an OR'ed set of hwloc_disc_phase_t.
For a GLOBAL component, this usually includes all other phases (~UL
).
Other components only exclude types that may bring conflicting topology information. MISC components should likely not be excluded since they usually bring non-primary additional information.
struct hwloc_backend*(* hwloc_disc_component::instantiate) (struct hwloc_topology *topology, struct hwloc_disc_component *component, unsigned excluded_phases, const void *data1, const void *data2, const void *data3) |
Instantiate callback to create a backend from the component. Parameters data1, data2, data3 are NULL except for components that have special enabling routines such as hwloc_topology_set_xml().
const char* hwloc_disc_component::name |
Name. If this component is built as a plugin, this name does not have to match the plugin filename.
unsigned hwloc_disc_component::phases |
Discovery phases performed by this component. OR'ed set of hwloc_disc_phase_t.
unsigned hwloc_disc_component::priority |
Component priority. Used to sort topology->components, higher priority first. Also used to decide between two components with the same name.
Usual values are 50 for native OS (or platform) components, 45 for x86, 40 for no-OS fallback, 30 for global components (xml, synthetic), 20 for pci, 10 for other misc components (opencl etc.).