Projects / Hardware Locality

Hardware Locality

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
Licenses
Operating Systems
Implementation
Translations

RSS Recent releases

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.

  •  21 Dec 2011 02:56

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.

  •  13 Oct 2011 21:33

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.

  •  13 Oct 2011 21:33

Release Notes: The build was fixed on AIX 5.2. The XML import of very large page sizes or counts on 32-bit plaforms was fixed. Some crashes and odditites with cgroup were fixed. Messages for synthetic topology were improved. The documentation was improved.

  •  23 Aug 2011 14:25

Release Notes: Support of AMD Bulldozer "Compute-Unit" modules was improved. A crash in hwloc-ps when listing processes from another Linux cpuset was fixed. Building on AIX and Solaris was fixed. Cache size detection on Darwin was fixed. The configure script now fails if --enable-xml or --enable-cairo is given and proper support cannot be found. Spurious L1 cache detection on AIX was fixed. hwloc_get_last_cpu_location(THREAD) on Linux was fixed. Object distance detection on Solaris was fixed. The pthread_self weak symbol was added to ease static linking. Minor documentation fixes were made.

Screenshot

Project Spotlight

jPDFImages

A Java library to import and export images to and from PDF files.

Screenshot

Project Spotlight

NmapSi4

A Qt4-based GUI for nmap.