hwloc provides command line tools and a C API to obtain the hierarchical map of key computing elements, such as: NUMA memory nodes, shared caches, processor sockets, processor cores, and processor "threads". hwloc also gathers various attributes such as cache and memory information, and is portable across a variety of different operating systems and platforms. hwloc primarily aims at helping high-performance computing (HPC) applications, but is also applicable to any project seeking to exploit code and/or data locality on modern computing platforms.
|Tags||topology Libraries Utilities Hardware Detection|
|Operating Systems||Linux Solaris AIX OSF/1 HP-UX Mac OS X Windows|
Release Notes: This release fixes a missing last bit in hwloc_linux_get_thread_cpubind(), an "inline" keyword, PCI locality with Linux cgroups, and grouping by distance on mips64. It improves XML support. It fixes build issues with gccfss, xls, and Solaris Studio 12 compilers, FreeBSD without cpuid support, Windows, -mcmodel=medium, and dependencies in embedded mode. It includes fixes for building with old GNU sed, really long commandlines, and compiler visibility support.
Release Notes: This release contains all changes from 1.3.2. It fixes hwloc_alloc_membind, memory leaks in some get_membind() functions, several issues with libnuma, and some overzealous distance grouping assertions. A workaround BIOS is reporting empty I/O locality in CUDA and OpenFabrics. This release fixes a missing last bit in hwloc_linux_get_thread_cpubind(), an "inline" keyword, PCI locality with Linux cgroups, and grouping by distance on mips64. It fixes build issues with gccfss, xls, and Solaris Studio 12 compilers, FreeBSD without cpuid support, Windows, -mcmodel=medium, and dependencies in embedded mode.
Release Notes: This release adds a "custom" interface and "assembler" tools to build multi-node topology. It adds a symmetric_subtree object attribute to ease assumptions when consulting regular symmetric topologies. It adds a CPUModel and CPUType info attribute to Socket objects on Linux and Solaris. It adds hwloc_get_obj_index_inside_cpuset() to retrieve the "logical" index of an object within a subtree of the topology. It adds more NVIDIA CUDA helpers in cuda.h and cudart.h to find hwloc objects corresponding to CUDA devices.
Release Notes: This release fixes pciutils detection with pkg-config when not installed in standard directories, visibility option detection with the Solaris Studio compiler, support for old Linux sched.h headers, and inline and attribute support for Solaris compilers. It prints a short summary at the end of the configure output, adds a --disable-libnuma configure option, makes hwloc's configure script properly obey $PKG_CONFIG, silences some harmless pciutils warnings, and fixes the documentation with respect to hwloc_pid_t and hwloc_thread_t being either pid_t and pthread_t on Unix, or HANDLE on Windows.
Release Notes: I/O devices and bridges were added to the topology; lstopo displays them by default. XML is now always supported, even without libxml2. Associativity information was added to caches. Support for s390 books were added. Grouping can now be relaxed. The OS-provided distance matrix can be overridden. Some options were added to the command line tools.