The Portable Hardware Locality (hwloc) software package provides a portable abstraction (across OS, versions, architectures, …) of the hierarchical topology of modern architectures, including NUMA memory nodes, sockets, shared caches, cores and simultaneous multithreading. It also gathers various system attributes such as cache and memory information. It primarily aims at helping applications with gathering information about modern computing hardware so as to exploit it accordingly and efficiently.
The team says its ready for production use, so go to town. This version supports Linux, Solaris, AIX, Darwin, FreeBSD, OSF/1, HP-UX, and Windows. You can download it from www.open-mpi.org/projects/hwloc/. Jeff and the guys (and gals) have been busy spreading the word. Jeff posted about the release on his own blog, and there’s even one of those podcast thingies the kids are always talking about these days.