File: hwlocality_helper_find_inside.3

package info (click to toggle)
hwloc-contrib 2.4.1%2Bdfsg-2
  • links: PTS, VCS
  • area: contrib
  • in suites: bullseye
  • size: 21,976 kB
  • sloc: ansic: 58,129; xml: 12,064; sh: 6,822; makefile: 2,200; javascript: 1,623; perl: 380; cpp: 93; php: 8; sed: 4
file content (160 lines) | stat: -rw-r--r-- 7,534 bytes parent folder | download | duplicates (2)
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
.TH "hwlocality_helper_find_inside" 3 "Thu Feb 11 2021" "Version 2.4.1" "Hardware Locality (hwloc)" \" -*- nroff -*-
.ad l
.nh
.SH NAME
hwlocality_helper_find_inside \- Finding Objects inside a CPU set
.SH SYNOPSIS
.br
.PP
.SS "Functions"

.in +1c
.ti -1c
.RI "static \fBhwloc_obj_t\fP \fBhwloc_get_first_largest_obj_inside_cpuset\fP (\fBhwloc_topology_t\fP topology, \fBhwloc_const_cpuset_t\fP set)"
.br
.ti -1c
.RI "int \fBhwloc_get_largest_objs_inside_cpuset\fP (\fBhwloc_topology_t\fP topology, \fBhwloc_const_cpuset_t\fP set, \fBhwloc_obj_t\fP *restrict objs, int max)"
.br
.ti -1c
.RI "static \fBhwloc_obj_t\fP \fBhwloc_get_next_obj_inside_cpuset_by_depth\fP (\fBhwloc_topology_t\fP topology, \fBhwloc_const_cpuset_t\fP set, int depth, \fBhwloc_obj_t\fP prev)"
.br
.ti -1c
.RI "static \fBhwloc_obj_t\fP \fBhwloc_get_next_obj_inside_cpuset_by_type\fP (\fBhwloc_topology_t\fP topology, \fBhwloc_const_cpuset_t\fP set, \fBhwloc_obj_type_t\fP type, \fBhwloc_obj_t\fP prev)"
.br
.ti -1c
.RI "static \fBhwloc_obj_t\fP \fBhwloc_get_obj_inside_cpuset_by_depth\fP (\fBhwloc_topology_t\fP topology, \fBhwloc_const_cpuset_t\fP set, int depth, unsigned idx)"
.br
.ti -1c
.RI "static \fBhwloc_obj_t\fP \fBhwloc_get_obj_inside_cpuset_by_type\fP (\fBhwloc_topology_t\fP topology, \fBhwloc_const_cpuset_t\fP set, \fBhwloc_obj_type_t\fP type, unsigned idx)"
.br
.ti -1c
.RI "static unsigned \fBhwloc_get_nbobjs_inside_cpuset_by_depth\fP (\fBhwloc_topology_t\fP topology, \fBhwloc_const_cpuset_t\fP set, int depth)"
.br
.ti -1c
.RI "static int \fBhwloc_get_nbobjs_inside_cpuset_by_type\fP (\fBhwloc_topology_t\fP topology, \fBhwloc_const_cpuset_t\fP set, \fBhwloc_obj_type_t\fP type)"
.br
.ti -1c
.RI "static int \fBhwloc_get_obj_index_inside_cpuset\fP (\fBhwloc_topology_t\fP topology, \fBhwloc_const_cpuset_t\fP set, \fBhwloc_obj_t\fP obj)"
.br
.in -1c
.SH "Detailed Description"
.PP 

.SH "Function Documentation"
.PP 
.SS "static \fBhwloc_obj_t\fP hwloc_get_first_largest_obj_inside_cpuset (\fBhwloc_topology_t\fP topology, \fBhwloc_const_cpuset_t\fP set)\fC [inline]\fP, \fC [static]\fP"

.PP
Get the first largest object included in the given cpuset \fCset\fP\&. 
.PP
\fBReturns\fP
.RS 4
the first object that is included in \fCset\fP and whose parent is not\&.
.RE
.PP
This is convenient for iterating over all largest objects within a CPU set by doing a loop getting the first largest object and clearing its CPU set from the remaining CPU set\&. 
.SS "int hwloc_get_largest_objs_inside_cpuset (\fBhwloc_topology_t\fP topology, \fBhwloc_const_cpuset_t\fP set, \fBhwloc_obj_t\fP *restrict objs, int max)"

.PP
Get the set of largest objects covering exactly a given cpuset \fCset\fP\&. 
.PP
\fBReturns\fP
.RS 4
the number of objects returned in \fCobjs\fP\&. 
.RE
.PP

.SS "static unsigned hwloc_get_nbobjs_inside_cpuset_by_depth (\fBhwloc_topology_t\fP topology, \fBhwloc_const_cpuset_t\fP set, int depth)\fC [inline]\fP, \fC [static]\fP"

.PP
Return the number of objects at depth \fCdepth\fP included in CPU set \fCset\fP\&. 
.PP
\fBNote\fP
.RS 4
Objects with empty CPU sets are ignored (otherwise they would be considered included in any given set)\&.
.PP
This function cannot work if objects at the given depth do not have CPU sets (I/O or Misc objects)\&. 
.RE
.PP

.SS "static int hwloc_get_nbobjs_inside_cpuset_by_type (\fBhwloc_topology_t\fP topology, \fBhwloc_const_cpuset_t\fP set, \fBhwloc_obj_type_t\fP type)\fC [inline]\fP, \fC [static]\fP"

.PP
Return the number of objects of type \fCtype\fP included in CPU set \fCset\fP\&. If no object for that type exists inside CPU set \fCset\fP, 0 is returned\&. If there are several levels with objects of that type inside CPU set \fCset\fP, -1 is returned\&.
.PP
\fBNote\fP
.RS 4
Objects with empty CPU sets are ignored (otherwise they would be considered included in any given set)\&.
.PP
This function cannot work if objects of the given type do not have CPU sets (I/O objects)\&. 
.RE
.PP

.SS "static \fBhwloc_obj_t\fP hwloc_get_next_obj_inside_cpuset_by_depth (\fBhwloc_topology_t\fP topology, \fBhwloc_const_cpuset_t\fP set, int depth, \fBhwloc_obj_t\fP prev)\fC [inline]\fP, \fC [static]\fP"

.PP
Return the next object at depth \fCdepth\fP included in CPU set \fCset\fP\&. If \fCprev\fP is \fCNULL\fP, return the first object at depth \fCdepth\fP included in \fCset\fP\&. The next invokation should pass the previous return value in \fCprev\fP so as to obtain the next object in \fCset\fP\&.
.PP
\fBNote\fP
.RS 4
Objects with empty CPU sets are ignored (otherwise they would be considered included in any given set)\&.
.PP
This function cannot work if objects at the given depth do not have CPU sets (I/O or Misc objects)\&. 
.RE
.PP

.SS "static \fBhwloc_obj_t\fP hwloc_get_next_obj_inside_cpuset_by_type (\fBhwloc_topology_t\fP topology, \fBhwloc_const_cpuset_t\fP set, \fBhwloc_obj_type_t\fP type, \fBhwloc_obj_t\fP prev)\fC [inline]\fP, \fC [static]\fP"

.PP
Return the next object of type \fCtype\fP included in CPU set \fCset\fP\&. If there are multiple or no depth for given type, return \fCNULL\fP and let the caller fallback to \fBhwloc_get_next_obj_inside_cpuset_by_depth()\fP\&.
.PP
\fBNote\fP
.RS 4
Objects with empty CPU sets are ignored (otherwise they would be considered included in any given set)\&.
.PP
This function cannot work if objects of the given type do not have CPU sets (I/O or Misc objects)\&. 
.RE
.PP

.SS "static int hwloc_get_obj_index_inside_cpuset (\fBhwloc_topology_t\fP topology, \fBhwloc_const_cpuset_t\fP set, \fBhwloc_obj_t\fP obj)\fC [inline]\fP, \fC [static]\fP"

.PP
Return the logical index among the objects included in CPU set \fCset\fP\&. Consult all objects in the same level as \fCobj\fP and inside CPU set \fCset\fP in the logical order, and return the index of \fCobj\fP within them\&. If \fCset\fP covers the entire topology, this is the logical index of \fCobj\fP\&. Otherwise, this is similar to a logical index within the part of the topology defined by CPU set \fCset\fP\&.
.PP
\fBNote\fP
.RS 4
Objects with empty CPU sets are ignored (otherwise they would be considered included in any given set)\&.
.PP
This function cannot work if obj does not have CPU sets (I/O objects)\&. 
.RE
.PP

.SS "static \fBhwloc_obj_t\fP hwloc_get_obj_inside_cpuset_by_depth (\fBhwloc_topology_t\fP topology, \fBhwloc_const_cpuset_t\fP set, int depth, unsigned idx)\fC [inline]\fP, \fC [static]\fP"

.PP
Return the (logically) \fCidx\fP -th object at depth \fCdepth\fP included in CPU set \fCset\fP\&. 
.PP
\fBNote\fP
.RS 4
Objects with empty CPU sets are ignored (otherwise they would be considered included in any given set)\&.
.PP
This function cannot work if objects at the given depth do not have CPU sets (I/O or Misc objects)\&. 
.RE
.PP

.SS "static \fBhwloc_obj_t\fP hwloc_get_obj_inside_cpuset_by_type (\fBhwloc_topology_t\fP topology, \fBhwloc_const_cpuset_t\fP set, \fBhwloc_obj_type_t\fP type, unsigned idx)\fC [inline]\fP, \fC [static]\fP"

.PP
Return the \fCidx\fP -th object of type \fCtype\fP included in CPU set \fCset\fP\&. If there are multiple or no depth for given type, return \fCNULL\fP and let the caller fallback to \fBhwloc_get_obj_inside_cpuset_by_depth()\fP\&.
.PP
\fBNote\fP
.RS 4
Objects with empty CPU sets are ignored (otherwise they would be considered included in any given set)\&.
.PP
This function cannot work if objects of the given type do not have CPU sets (I/O or Misc objects)\&. 
.RE
.PP

.SH "Author"
.PP 
Generated automatically by Doxygen for Hardware Locality (hwloc) from the source code\&.