1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59
|
.TH "Building Custom Topologies" 3 "Tue Oct 7 2014" "Version 1.10.0" "Hardware Locality (hwloc)" \" -*- nroff -*-
.ad l
.nh
.SH NAME
Building Custom Topologies \-
.SS "Functions"
.in +1c
.ti -1c
.RI "int \fBhwloc_custom_insert_topology\fP (\fBhwloc_topology_t\fP newtopology, \fBhwloc_obj_t\fP newparent, \fBhwloc_topology_t\fP oldtopology, \fBhwloc_obj_t\fP oldroot)"
.br
.ti -1c
.RI "\fBhwloc_obj_t\fP \fBhwloc_custom_insert_group_object_by_parent\fP (\fBhwloc_topology_t\fP topology, \fBhwloc_obj_t\fP parent, int groupdepth)"
.br
.in -1c
.SH "Detailed Description"
.PP
A custom topology may be initialized by calling \fBhwloc_topology_set_custom()\fP after \fBhwloc_topology_init()\fP\&. It may then be modified by inserting objects or entire topologies\&. Once done assembling, \fBhwloc_topology_load()\fP should be invoked as usual to finalize the topology\&.
.SH "Function Documentation"
.PP
.SS "\fBhwloc_obj_t\fP hwloc_custom_insert_group_object_by_parent (\fBhwloc_topology_t\fPtopology, \fBhwloc_obj_t\fPparent, intgroupdepth)"
.PP
Insert a new group object inside a custom topology\&. An object with type \fBHWLOC_OBJ_GROUP\fP is inserted as a new child of object \fCparent\fP\&.
.PP
\fCgroupdepth\fP is the depth attribute to be given to the new object\&. It may for instance be 0 for top-level groups, 1 for their children, and so on\&.
.PP
The custom topology \fCnewtopology\fP must have been prepared with \fBhwloc_topology_set_custom()\fP and not loaded with \fBhwloc_topology_load()\fP yet\&.
.PP
\fCparent\fP may be either the root of \fCtopology\fP or an object that was added earlier through \fBhwloc_custom_insert_group_object_by_parent()\fP\&.
.PP
\fBNote:\fP
.RS 4
The cpuset and nodeset of the new group object are NULL because these sets are meaningless when assembling multiple topologies\&.
.PP
The cpuset and nodeset of the \fCparent\fP object are not modified\&.
.RE
.PP
.SS "int hwloc_custom_insert_topology (\fBhwloc_topology_t\fPnewtopology, \fBhwloc_obj_t\fPnewparent, \fBhwloc_topology_t\fPoldtopology, \fBhwloc_obj_t\fPoldroot)"
.PP
Insert an existing topology inside a custom topology\&. Duplicate the existing topology \fColdtopology\fP inside a new custom topology \fCnewtopology\fP as a leaf of object \fCnewparent\fP\&.
.PP
If \fColdroot\fP is not \fCNULL\fP, duplicate \fColdroot\fP and all its children instead of the entire \fColdtopology\fP\&. Passing the root object of \fColdtopology\fP in \fColdroot\fP is equivalent to passing \fCNULL\fP\&.
.PP
The custom topology \fCnewtopology\fP must have been prepared with \fBhwloc_topology_set_custom()\fP and not loaded with \fBhwloc_topology_load()\fP yet\&.
.PP
\fCnewparent\fP may be either the root of \fCnewtopology\fP or an object that was added through \fBhwloc_custom_insert_group_object_by_parent()\fP\&.
.PP
\fBNote:\fP
.RS 4
The cpuset and nodeset of the \fCnewparent\fP object are not modified based on the contents of \fColdtopology\fP\&.
.RE
.PP
.SH "Author"
.PP
Generated automatically by Doxygen for Hardware Locality (hwloc) from the source code\&.
|