Open MPI logo

Hardware Locality announce Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Hardware Locality Announcements mailing list

Subject: [hwloc-announce] Hardware locality (hwloc) v1.7rc1 released
From: Brice Goglin (Brice.Goglin_at_[hidden])
Date: 2013-03-27 04:38:16


The Hardware Locality (hwloc) team is pleased to announce the first
release candidate for v1.7:

   http://www.open-mpi.org/projects/hwloc/

v1.7rc1 is the first milestone of a major feature release. The v1.6
series focused on the core rework to ease the addition of new discovery
components. As expected, v1.7 now adds many new discovery components
for GPUs, Xeon Phi, BlueGene/Q, and NetBSD.

There are also a couple changes in the API and in command-line tools,
many documentation improvements, the ability to build external plugins,
and more.

* New operating system backends
  + Add BlueGene/Q compute node kernel (CNK) support. See the FAQ in the
    documentation for details. Thanks to Jeff Hammond, Christopher Samuel
    and Erik Schnetter for their help.
  + Add NetBSD support, thanks to Aleksej Saushev.
* New I/O device discovery
  + Add co-processor OS devices such as "mic0" for Intel Xeon Phi (MIC)
    on Linux. Thanks to Jerome Vienne for helping.
  + Add co-processor OS devices such as "cuda0" for NVIDIA CUDA-capable GPUs.
  + Add co-processor OS devices such as "opencl0d0" for OpenCL GPU devices
    on the AMD OpenCL implementation.
  + Add GPU OS devices such as ":0.0" for NVIDIA X11 displays.
  + Add GPU OS devices such as "nvml0" for NVIDIA GPUs.
    Thanks to Marwan Abdellah and Stefan Eilemann for helping.
  These new OS devices have some string info attributes such as CoProcType,
  GPUModel, etc. to better identify them.
  See the I/O Devices and Attributes documentation sections for details.
* New components
  + Add the "opencl", "cuda", "nvml" and "gl" components for I/O device
    discovery.
  + "nvml" also improves the discovery of NVIDIA GPU PCIe link speed.
  All of these new components may be built as plugins. They may also be
  disabled entirely by passing --disable-opencl/cuda/nvml/gl to configure.
  See the I/O Devices, Components and Plugins, and FAQ documentation
  sections for details.
* API
  + Add hwloc_topology_get_flags().
  + Add hwloc/plugins.h for building external plugins.
    See the Adding new discovery components and plugins section.
* Interoperability
  + Add hwloc/opencl.h, hwloc/nvml.h, hwloc/gl.h and hwloc/intel-mic.h
    to retrieve the locality of OS devices that correspond to AMD OpenCL
    GPU devices or indexes, to NVML devices or indexes, to NVIDIA X11
    displays, or to Intel Xeon Phi (MIC) device indexes.
  + Add new helpers in hwloc/cuda.h and hwloc/cudart.h to convert
    between CUDA devices or indexes and hwloc OS devices.
  + Add hwloc_ibv_get_device_osdev() and clarify the requirements
    of the OpenFabrics Verbs helpers in hwloc/openfabrics-verbs.h.
* Tools
  + hwloc-info is not only a synonym of lstopo -s anymore, it also
    dumps information about objects given on the command-line.
* Documentation
  + Add a section "Existing components and plugins".
  + Add a list of common OS devices in section "Software devices".
  + Add a new FAQ entry "Why is lstopo slow?" about lstopo slowness
    issues because of GPUs.
  + Clarify the documentation of inline helpers in hwloc/myriexpress.h
    and hwloc/openfabrics-verbs.h.
* Misc
  + Improve cache detection on AIX.
  + The HWLOC_COMPONENTS variable now excludes the components whose
    names are prefixed with '-'.
  + lstopo --ignore PU now works when displaying the topology in
    graphical and textual mode (not when exporting to XML).
  + The `libpci' component is now called `pci' but the old name is still
    accepted in the HWLOC_COMPONENTS variable for backward compatibility.

This also contains a couple bug fixes that are waiting for a v1.6.3
release, that may or may not ever exist.

--
Brice