hwloc-info.1 9.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289
  1. .\" -*- nroff -*-
  2. .\" Copyright © 2009-2023 Inria. All rights reserved.
  3. .\" Copyright © 2009-2010 Université of Bordeaux
  4. .\" Copyright © 2009-2010 Cisco Systems, Inc. All rights reserved.
  5. .\" See COPYING in top-level directory.
  6. .TH HWLOC-INFO "1" "Sep 07, 2023" "2.9.3" "hwloc"
  7. .SH NAME
  8. hwloc-info \- Show some information about some objects or about a topology or about support features
  9. .
  10. .\" **************************
  11. .\" Synopsis Section
  12. .\" **************************
  13. .SH SYNOPSIS
  14. .
  15. .PP
  16. .B hwloc-info
  17. [ \fIoptions \fR]...
  18. \fI<object>\fR...
  19. .PP
  20. .B hwloc-info
  21. [ \fIoptions \fR]...
  22. .
  23. .PP
  24. Note that hwloc(7) provides a detailed explanation of the hwloc system
  25. and of valid <object> formats;
  26. it should be read before reading this man page.
  27. .\" **************************
  28. .\" Options Section
  29. .\" **************************
  30. .SH OPTIONS
  31. .
  32. .TP
  33. \fB\-\-objects\fR
  34. Report information specific objects.
  35. This is the default if some objects are given on the command-line.
  36. .TP
  37. \fB\-\-topology\fR
  38. Report a summary of the topology instead of about some specific objects.
  39. This is the default if no object is given on the command-line.
  40. .TP
  41. \fB\-\-support\fR
  42. Report the features that are supported by hwloc on the topology.
  43. The features are those available through the \fBhwloc_topology_get_support()\fR function.
  44. This is useful for verifying which CPU or memory binding options are supported
  45. by the current hwloc installation.
  46. .TP
  47. \fB\-i\fR <path>, \fB\-\-input\fR <path>
  48. Read the topology from <path> instead of discovering the topology of the local machine.
  49. If <path> is a file,
  50. it may be a XML file exported by a previous hwloc program.
  51. If <path> is "\-", the standard input may be used as a XML file.
  52. On Linux, <path> may be a directory containing the topology files
  53. gathered from another machine topology with hwloc-gather-topology.
  54. On x86, <path> may be a directory containing a cpuid dump gathered
  55. with hwloc-gather-cpuid.
  56. When the archivemount program is available, <path> may also be a tarball
  57. containing such Linux or x86 topology files.
  58. .TP
  59. \fB\-i\fR <specification>, \fB\-\-input\fR <specification>
  60. Simulate a fake hierarchy (instead of discovering the topology on the
  61. local machine). If <specification> is "node:2 pu:3", the topology will
  62. contain two NUMA nodes with 3 processing units in each of them.
  63. The <specification> string must end with a number of PUs.
  64. .TP
  65. \fB\-\-if\fR <format>, \fB\-\-input\-format\fR <format>
  66. Enforce the input in the given format, among \fBxml\fR, \fBfsroot\fR,
  67. \fBcpuid\fR and \fBsynthetic\fR.
  68. .TP
  69. \fB\-v\fR \fB\-\-verbose\fR
  70. Include additional detail.
  71. .TP
  72. \fB\-s\fR \fB\-\-silent\fR
  73. Reduce the amount of details to show.
  74. A single summary line per object is displayed.
  75. .TP
  76. \fB\-\-ancestors\fR
  77. Display information about the object as well as
  78. about all its ancestors up to the root of the topology.
  79. .TP
  80. \fB\-\-ancestor\fR <type>
  81. Only display the object ancestors that match the given type.
  82. .TP
  83. \fB\-\-children\fR
  84. Display information about the object children.
  85. .TP
  86. \fB\-\-descendants\fR <type>
  87. Display information about the object descendants that match the given type.
  88. .TP
  89. \fB\-\-local\-memory\fR
  90. Display information about the NUMA nodes that are local to the given object.
  91. .TP
  92. \fB\-\-local\-memory\-flags\fR
  93. Change the flags used to select local NUMA nodes.
  94. Flags may be given as numeric values or as a comma-separated list of flag names
  95. that are passed to \fIhwloc_get_local_numanode_objs()\fR.
  96. Those names may be substrings of actual flag names as long as a single one matches.
  97. The default is \fB3\fR (or \fBsmaller,larger\fR)
  98. which means NUMA nodes are displayed
  99. if their locality either contains or is contained
  100. in the locality of the given object.
  101. This option enables \fB\-\-local\-memory\fR.
  102. .TP
  103. \fB\-\-best\-memattr\fR <name>
  104. Enable the listing local memory nodes with \fB\-\-local\-memory\fR,
  105. but only display the local node that has the best value for the memory
  106. attribute given by \fI<name>\fR (or as an index).
  107. If the memory attribute values depend on the initiator, the object given
  108. to hwloc-info is used as the initiator.
  109. .TP
  110. \fB\-n\fR
  111. When outputting object information, prefix each line with the index
  112. of the considered object within the input.
  113. For instance, if three cores were given in input, the output
  114. lines will be prefixed with "0: ", "1: " or "2: ".
  115. If \fB\-\-ancestor\fR is also used, the prefix will be "X.Y: "
  116. where X is the index of the considered object within the input,
  117. and Y is the parent index (0 for the object itself, increasing
  118. towards the root of the topology).
  119. .TP
  120. \fB\-\-disallowed\fR
  121. Include objects disallowed by administrative limitations.
  122. .TP
  123. \fB\-\-restrict\fR <cpuset>
  124. Restrict the topology to the given cpuset.
  125. This removes some PUs and their now-child-less parents.
  126. Beware that restricting the PUs in a topology may change the
  127. logical indexes of many objects, including NUMA nodes.
  128. .TP
  129. \fB\-\-restrict\fR nodeset=<nodeset>
  130. Restrict the topology to the given nodeset
  131. (unless \fB\-\-restrict\-flags\fR specifies something different).
  132. This removes some NUMA nodes and their now-child-less parents.
  133. Beware that restricting the NUMA nodes in a topology may change the
  134. logical indexes of many objects, including PUs.
  135. .TP
  136. \fB\-\-restrict\fR binding
  137. Restrict the topology to the current process binding.
  138. This option requires the use of the actual current machine topology
  139. (or any other topology with \fB\-\-thissystem\fR or with
  140. HWLOC_THISSYSTEM set to 1 in the environment).
  141. Beware that restricting the topology may change the
  142. logical indexes of many objects, including PUs and NUMA nodes.
  143. .TP
  144. \fB\-\-restrict\-flags\fR <flags>
  145. Enforce flags when restricting the topology.
  146. Flags may be given as numeric values or as a comma-separated list of flag names
  147. that are passed to \fIhwloc_topology_restrict()\fR.
  148. Those names may be substrings of actual flag names as long as a single one matches,
  149. for instance \fBbynodeset,memless\fR.
  150. The default is \fB0\fR (or \fBnone\fR).
  151. .TP
  152. \fB\-\-filter\fR <type>:<kind>, \fB\-\-filter\fR <type>
  153. Filter objects of type <type>, or of any type if <type> is "all".
  154. "io", "cache" and "icache" are also supported.
  155. <kind> specifies the filtering behavior.
  156. If "none" or not specified, all objects of the given type are removed.
  157. If "all", all objects are kept as usual.
  158. If "structure", objects are kept when they bring structure to the topology.
  159. If "important" (only applicable to I/O and Misc), only important objects are kept.
  160. See hwloc_topology_set_type_filter() for more details.
  161. .TP
  162. \fB\-\-no\-icaches\fR
  163. Do not show Instruction caches, only Data and Unified caches are considered.
  164. This is identical to \fB-\-filter icache:none\fR.
  165. .TP
  166. \fB\-\-no\-io\fB
  167. Do not show any I/O device or bridge.
  168. This is identical to \fB\-\-filter io:none\fR.
  169. By default, common devices (GPUs, NICs, block devices, ...) and
  170. interesting bridges are shown.
  171. .TP
  172. \fB\-\-no\-bridges\fB
  173. Do not show any I/O bridge except hostbridges.
  174. This is identical to \fB\-\-filter bridge:none\fR.
  175. By default, common devices (GPUs, NICs, block devices, ...) and
  176. interesting bridges are shown.
  177. .TP
  178. \fB\-\-whole\-io\fB
  179. Show all I/O devices and bridges.
  180. This is identical to \fB\-\-filter io:all\fR.
  181. By default, only common devices (GPUs, NICs, block devices, ...) and
  182. interesting bridges are shown.
  183. .TP
  184. \fB\-\-thissystem\fR
  185. Assume that the selected backend provides the topology for the
  186. system on which we are running.
  187. This is useful when using \fB\-\-restrict\fR binding and loading
  188. a custom topology such as an XML file.
  189. .TP
  190. \fB\-\-pid\fR <pid>
  191. Detect topology as seen by process <pid>, i.e. as if process <pid> did the
  192. discovery itself.
  193. Note that this can for instance change the set of allowed processors.
  194. Also show this process current CPU binding by marking the corresponding
  195. PUs (in Green in the graphical output, see the COLORS section below,
  196. or by appending \fI(binding)\fR to the verbose text output).
  197. If 0 is given as pid, the current binding for the lstopo process will be shown.
  198. .TP
  199. \fB\-p\fR \fB\-\-physical\fR
  200. Use OS/physical indexes instead of logical indexes for input.
  201. .TP
  202. \fB\-l\fR \fB\-\-logical\fR
  203. Use logical indexes instead of physical/OS indexes for input (default).
  204. .TP
  205. \fB\-\-version\fR
  206. Report version and exit.
  207. .TP
  208. \fB\-h\fR \fB\-\-help\fR
  209. Display help message and exit.
  210. .
  211. .\" **************************
  212. .\" Description Section
  213. .\" **************************
  214. .SH DESCRIPTION
  215. .
  216. hwloc-info displays information about the specified object.
  217. It is intended to be used with tools such as grep for filtering
  218. certain attribute lines.
  219. When no object is specified, or when \fB\-\-topology\fR is passed,
  220. hwloc-info prints a summary of the topology.
  221. When \fB\-\-support\fR is passed, hwloc-info lists the supported
  222. features for the topology.
  223. .
  224. .PP
  225. Objects may be specified as location tuples, as explained in hwloc(7).
  226. However hexadecimal bitmasks are not accepted since they may correspond
  227. to multiple objects.
  228. .
  229. .PP
  230. .B NOTE:
  231. It is highly recommended that you read the hwloc(7) overview page
  232. before reading this man page. Most of the concepts described in
  233. hwloc(7) directly apply to the hwloc-calc utility.
  234. .
  235. .\" **************************
  236. .\" Examples Section
  237. .\" **************************
  238. .SH EXAMPLES
  239. .PP
  240. To display information about each package:
  241. $ hwloc-info package:all
  242. Package L#0
  243. logical index = 0
  244. ...
  245. To display information about the core whose physical index is 2:
  246. $ hwloc-info -p core:2
  247. Core L#1
  248. logical index = 1
  249. os index = 2
  250. ...
  251. To list the NUMA nodes that are local a PU:
  252. $ hwloc-info --local-memory pu:25
  253. NUMANode L#6 = local memory #0 of PU L#25
  254. type = NUMANode
  255. ...
  256. NUMANode L#7 = local memory #1 of PU L#25
  257. type = NUMANode
  258. ...
  259. To show the best-bandwidth node among NUMA nodes local to a PU:
  260. $ hwloc-info --local-memory --best-memattr bandwidth pu:25
  261. NUMANode L#7 = local memory #1 of PU L#25
  262. type = NUMANode
  263. ...
  264. .
  265. .\" **************************
  266. .\" See also section
  267. .\" **************************
  268. .SH SEE ALSO
  269. .
  270. .ft R
  271. hwloc(7), lstopo(1), hwloc-calc(1), hwloc-bind(1), hwloc-ps(1)
  272. .sp