#topology #x86-64 #hwloc #os #sockets #hwinfo

atopology

Query and parse machine topology information from ACPI

24 releases

0.0.34 Jun 30, 2024
0.0.33 Oct 20, 2022
0.0.32 Jul 15, 2022
0.0.25 Sep 30, 2021
0.0.17 Jun 22, 2021

#485 in Hardware support

MIT/Apache

72KB
1.5K SLoC

topology

A no-std crate to parse the complete hardware topology and other information of an x86-64 machine.


lib.rs:

Interface to query information about the underlying hardware.

Our naming scheme follows the Intel x86/ACPI convention which has a thread/core/package/NUMA node hierarchy:

  • thread: Hardware scheduling unit (has an APIC, is an app or core bsp core)
  • core: one or more threads (usually 2)
  • package: one or more cores (usually a socket with a shared LLC)
  • affinity region: a NUMA node (consists of a bunch of threads/core/packages and memory regions)

Intel Topology is a pretty complicated subject (unfortunately), relevant documentation is here:

Dependencies

~8–20MB
~257K SLoC