hwloc topologies may be annotated with Misc objects (of type HWLOC_OBJ_MISC
) either automatically or by the user. This is a flexible way to annotate topologies with large sets of information since Misc objects may be inserted anywhere in the topology (to annotate specific objects or parts of the topology), even below other Misc objects, and each of them may contain multiple attributes (see also How do I annotate the topology with private notes?).
These Misc objects may have a subtype
field to replace Misc
with something else in the lstopo output.
Misc objects added by hwloc
hwloc only uses Misc objects when other object types are not sufficient, and when the Misc object type is not filtered-out anymore. This currently includes:
-
Memory modules (DIMMs), on Linux when privileged and when
dmi-sysfs
is supported by the kernel. These objects have a subtype
field of value MemoryModule
. They are currently always attached to the root object. Their attributes describe the DIMM vendor, model, etc. lstopo -v
displays them as: Misc(MemoryModule) (P#1 DeviceLocation="Bottom-Slot 2(right)" BankLocation="BANK 2" Vendor=Elpida SerialNumber=21733667 AssetTag=9876543210 PartNumber="EBJ81UG8EFU0-GN-F ")
-
Displaying process binding in
lstopo --top
. These objects have a subtype
field of value Process
and a name attribute made of their PID and program name. They are attached below the object they are bound to. The textual lstopo
displays them as: PU L#0 (P#0)
Misc(Process) 4445 myprogram
Annotating topologies with Misc objects
The user may annotate hwloc topologies with its own Misc objects. This can be achieved with hwloc_topology_insert_misc_object()
as well as hwloc-annotate command-line tool.