Blame src/hwloc/NEWS

Packit Service c5cf8c
Copyright © 2009 CNRS
Packit Service c5cf8c
Copyright © 2009-2018 Inria.  All rights reserved.
Packit Service c5cf8c
Copyright © 2009-2013 Université Bordeaux
Packit Service c5cf8c
Copyright © 2009-2011 Cisco Systems, Inc.  All rights reserved.
Packit Service c5cf8c
Packit Service c5cf8c
$COPYRIGHT$
Packit Service c5cf8c
Packit Service c5cf8c
Additional copyrights may follow
Packit Service c5cf8c
Packit Service c5cf8c
$HEADER$
Packit Service c5cf8c
Packit Service c5cf8c
===========================================================================
Packit Service c5cf8c
Packit Service c5cf8c
This file contains the main features as well as overviews of specific
Packit Service c5cf8c
bug fixes (and other actions) for each version of hwloc since version
Packit Service c5cf8c
0.9 (as initially released as "libtopology", then re-branded to "hwloc"
Packit Service c5cf8c
in v0.9.1).
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 2.0.3 (also included in 1.11.12 when appropriate)
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Fix build on Cygwin, thanks to Marco Atzeri for the patches.
Packit Service c5cf8c
* Fix a corner case of hwloc_topology_restrict() where children would
Packit Service c5cf8c
  become out-of-order.
Packit Service c5cf8c
* Fix the return length of export_xmlbuffer() functions to always
Packit Service c5cf8c
  include the ending \0.
Packit Service c5cf8c
* Fix lstopo --children-order argument parsing.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 2.0.2 (also included in 1.11.11 when appropriate)
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Add support for Hygon Dhyana processors in the x86 backend,
Packit Service c5cf8c
  thanks to Pu Wen for the patch.
Packit Service c5cf8c
* Fix symbol renaming to also rename internal components,
Packit Service c5cf8c
  thanks to Evan Ramos for the patch.
Packit Service c5cf8c
* Fix build on HP-UX, thanks to Richard Lloyd for reporting the issues.
Packit Service c5cf8c
* Detect PCI link speed without being root on Linux >= 4.13.
Packit Service c5cf8c
* Add HWLOC_VERSION* macros to the public headers,
Packit Service c5cf8c
  thanks to Gilles Gouaillardet for the suggestion.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 2.0.1 (also included in 1.11.10 when relevant)
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Bump the library soname to 15:0:0 to avoid conflicts with hwloc 1.11.x
Packit Service c5cf8c
  releases. The hwloc 2.0.0 soname was buggy (12:0:0), applications will
Packit Service c5cf8c
  have to be recompiled.
Packit Service c5cf8c
* Serialize pciaccess discovery to fix concurrent topology loads in
Packit Service c5cf8c
  multiple threads.
Packit Service c5cf8c
* Fix hwloc-dump-hwdata to only process SMBIOS information that correspond
Packit Service c5cf8c
  to the KNL and KNM configuration.
Packit Service c5cf8c
* Add a heuristic for guessing KNL/KNM memory and cluster modes when
Packit Service c5cf8c
  hwloc-dump-hwdata could not run as root earlier.
Packit Service c5cf8c
* Add --no-text lstopo option to remove text from some boxes in the
Packit Service c5cf8c
  graphical output. Mostly useful for removing Group labels.
Packit Service c5cf8c
* Some minor fixes to memory binding.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 2.0.0
Packit Service c5cf8c
-------------
Packit Service c5cf8c
*** The ABI of the library has changed. ***
Packit Service c5cf8c
  For instance some hwloc_obj fields were reordered, added or removed, see below.
Packit Service c5cf8c
  + HWLOC_API_VERSION and hwloc_get_api_version() now give 0x00020000.
Packit Service c5cf8c
  + See "How do I handle ABI breaks and API upgrades ?" in the FAQ
Packit Service c5cf8c
    and "Upgrading to hwloc 2.0 API" in the documentation.
Packit Service c5cf8c
* Major API changes
Packit Service c5cf8c
  + Memory, I/O and Misc objects are now stored in dedicated children lists,
Packit Service c5cf8c
    not in the usual children list that is now only used for CPU-side objects.
Packit Service c5cf8c
    - hwloc_get_next_child() may still be used to iterate over these 4 lists
Packit Service c5cf8c
      of children at once.
Packit Service c5cf8c
    - hwloc_obj_type_is_normal(), _memory() and _io() may be used to check
Packit Service c5cf8c
      the kind of a given object type.
Packit Service c5cf8c
  + Topologies always have at least one NUMA object. On non-NUMA machines,
Packit Service c5cf8c
    a single NUMA object is added to describe the entire machine memory.
Packit Service c5cf8c
    The NUMA level cannot be ignored anymore.
Packit Service c5cf8c
  + The NUMA level is special since NUMA nodes are not in the main hierarchy
Packit Service c5cf8c
    of objects anymore. Its depth is a fake negative depth that should not be
Packit Service c5cf8c
    compared with normal levels.
Packit Service c5cf8c
    - If all memory objects are attached to parents at the same depth,
Packit Service c5cf8c
      it may be retrieved with hwloc_get_memory_parents_depth().
Packit Service c5cf8c
  + The HWLOC_OBJ_CACHE type is replaced with 8 types HWLOC_OBJ_L[1-5]CACHE
Packit Service c5cf8c
    and HWLOC_OBJ_L[1-3]ICACHE that remove the need to disambiguate levels
Packit Service c5cf8c
    when looking for caches with _by_type() functions.
Packit Service c5cf8c
    - New hwloc_obj_type_is_{,d,i}cache() functions may be used to check whether
Packit Service c5cf8c
      a given type is a cache.
Packit Service c5cf8c
  + Reworked ignoring/filtering API
Packit Service c5cf8c
    - Replace hwloc_topology_ignore*() functions with hwloc_topology_set_type_filter()
Packit Service c5cf8c
      and hwloc_topology_set_all_types_filter().
Packit Service c5cf8c
      . Contrary to hwloc_topology_ignore_{type,all}_keep_structure() which
Packit Service c5cf8c
        removed individual objects, HWLOC_TYPE_FILTER_KEEP_STRUCTURE only removes
Packit Service c5cf8c
        entire levels (so that topology do not become too asymmetric).
Packit Service c5cf8c
    - Remove HWLOC_TOPOLOGY_FLAG_ICACHES in favor of hwloc_topology_set_icache_types_filter()
Packit Service c5cf8c
      with HWLOC_TYPE_FILTER_KEEP_ALL.
Packit Service c5cf8c
    - Remove HWLOC_TOPOLOGY_FLAG_IO_DEVICES, _IO_BRIDGES and _WHOLE_IO in favor of
Packit Service c5cf8c
      hwloc_topology_set_io_types_filter() with HWLOC_TYPE_FILTER_KEEP_ALL or
Packit Service c5cf8c
      HWLOC_TYPE_FILTER_KEEP_IMPORTANT.
Packit Service c5cf8c
  + The distance API has been completely reworked. It is now described
Packit Service c5cf8c
    in hwloc/distances.h.
Packit Service c5cf8c
  + Return values
Packit Service c5cf8c
    - Most functions in hwloc/bitmap.h now return an int that may be negative
Packit Service c5cf8c
      in case of failure to realloc/extend the internal storage of a bitmap.
Packit Service c5cf8c
    - hwloc_obj_add_info() also returns an int in case allocations fail.
Packit Service c5cf8c
* Minor API changes
Packit Service c5cf8c
  + Object attributes
Packit Service c5cf8c
    - obj->memory is removed.
Packit Service c5cf8c
      . local_memory and page_types attributes are now in obj->attr->numanode
Packit Service c5cf8c
      . total_memory moves obj->total_memory.
Packit Service c5cf8c
    - Objects do not have allowed_cpuset and allowed_nodeset anymore.
Packit Service c5cf8c
      They are only available for the entire topology using
Packit Service c5cf8c
      hwloc_topology_get_allowed_cpuset() and hwloc_topology_get_allowed_nodeset().
Packit Service c5cf8c
    - Objects now have a "subtype" field that supersedes former "Type" and
Packit Service c5cf8c
      "CoProcType" info attributes.
Packit Service c5cf8c
  + Object and level depths are now signed ints.
Packit Service c5cf8c
  + Object string printing and parsing
Packit Service c5cf8c
    - hwloc_type_sscanf() deprecates the old hwloc_obj_type_sscanf().
Packit Service c5cf8c
    - hwloc_type_sscanf_as_depth() is added to convert a type name into
Packit Service c5cf8c
      a level depth.
Packit Service c5cf8c
    - hwloc_obj_cpuset_snprintf() is deprecated in favor of hwloc_bitmap_snprintf().
Packit Service c5cf8c
  + Misc objects
Packit Service c5cf8c
    - Replace hwloc_topology_insert_misc_object_by_cpuset() with
Packit Service c5cf8c
      hwloc_topology_insert_group_object() to precisely specify the location
Packit Service c5cf8c
      of an additional hierarchy level in the topology.
Packit Service c5cf8c
    - Misc objects have their own level and depth to iterate over all of them.
Packit Service c5cf8c
    - Misc objects may now only be inserted as a leaf object with
Packit Service c5cf8c
      hwloc_topology_insert_misc_object() which deprecates
Packit Service c5cf8c
      hwloc_topology_insert_misc_object_by_parent().
Packit Service c5cf8c
  + hwloc_topology_restrict() doesn't remove objects that contain memory
Packit Service c5cf8c
    by default anymore.
Packit Service c5cf8c
    - The list of existing restrict flags was modified.
Packit Service c5cf8c
  + The discovery support array now contains some NUMA specific bits.
Packit Service c5cf8c
  + XML export functions take an additional flags argument,
Packit Service c5cf8c
    for instance for exporting XMLs that are compatible with hwloc 1.x.
Packit Service c5cf8c
  + Functions diff_load_xml*(), diff_export_xml*() and diff_destroy() in
Packit Service c5cf8c
    hwloc/diff.h do not need a topology as first parameter anymore.
Packit Service c5cf8c
  + hwloc_parse_cpumap_file () superseded by hwloc_linux_read_path_as_cpumask()
Packit Service c5cf8c
    in hwloc/linux.h.
Packit Service c5cf8c
  + HWLOC_MEMBIND_DEFAULT and HWLOC_MEMBIND_FIRSTTOUCH were clarified.
Packit Service c5cf8c
* New APIs and Features
Packit Service c5cf8c
  + Add hwloc/shmem.h for sharing topologies between processes running on
Packit Service c5cf8c
    the same machine (for reducing the memory footprint).
Packit Service c5cf8c
  + Add the experimental netloc subproject. It is disabled by default
Packit Service c5cf8c
    and can be enabled with --enable-netloc.
Packit Service c5cf8c
    It currently brings command-line tools to gather and visualize the
Packit Service c5cf8c
    topology of InfiniBand fabrics, and an API to convert such topologies
Packit Service c5cf8c
    into Scotch architectures for process mapping.
Packit Service c5cf8c
    See the documentation for details.
Packit Service c5cf8c
* Removed APIs and features
Packit Service c5cf8c
  + Remove the online_cpuset from struct hwloc_obj. Offline PUs get unknown
Packit Service c5cf8c
    topologies on Linux nowadays, and wrong topology on Solaris. Other OS
Packit Service c5cf8c
    do not support them. And one cannot do much about them anyway. Just keep
Packit Service c5cf8c
    them in complete_cpuset.
Packit Service c5cf8c
  + Remove the now-unused "System" object type HWLOC_OBJ_SYSTEM,
Packit Service c5cf8c
    defined to MACHINE for backward compatibility.
Packit Service c5cf8c
  + The almost-unused "os_level" attribute has been removed from the
Packit Service c5cf8c
    hwloc_obj structure.
Packit Service c5cf8c
  + Remove the custom interface for assembling the topologies of different
Packit Service c5cf8c
    nodes as well as the hwloc-assembler tools.
Packit Service c5cf8c
  + hwloc_topology_set_fsroot() is removed, the environment variable
Packit Service c5cf8c
    HWLOC_FSROOT may be used for the same remote testing/debugging purpose.
Packit Service c5cf8c
  + Remove the deprecated hwloc_obj_snprintf(), hwloc_obj_type_of_string(),
Packit Service c5cf8c
    hwloc_distribute[v]().
Packit Service c5cf8c
  * Remove Myrinet Express interoperability (hwloc/myriexpress.h).
Packit Service c5cf8c
  + Remove Kerrighed support from the Linux backend.
Packit Service c5cf8c
  + Remove Tru64 (OSF/1) support.
Packit Service c5cf8c
    - Remove HWLOC_MEMBIND_REPLICATE which wasn't available anywhere else.
Packit Service c5cf8c
* Backend improvements
Packit Service c5cf8c
  + Linux
Packit Service c5cf8c
    - OS devices do not have to be attached through PCI anymore,
Packit Service c5cf8c
      for instance enabling the discovery of NVDIMM block devices.
Packit Service c5cf8c
    - Remove the dependency on libnuma.
Packit Service c5cf8c
    - Add a SectorSize attribute to block OS devices.
Packit Service c5cf8c
  + Mac OS X
Packit Service c5cf8c
    - Fix detection of cores and hyperthreads.
Packit Service c5cf8c
    - Add CPUVendor, Model, ... attributes.
Packit Service c5cf8c
  + Windows
Packit Service c5cf8c
    - Add get_area_memlocation().
Packit Service c5cf8c
* Tools
Packit Service c5cf8c
  + lstopo and hwloc-info have a new --filter option matching the new filtering API.
Packit Service c5cf8c
  + lstopo can be given --children-order=plain to force a basic displaying
Packit Service c5cf8c
    of memory and normal children together below their parent.
Packit Service c5cf8c
  + hwloc-distances was removed and replaced with lstopo --distances.
Packit Service c5cf8c
* Misc
Packit Service c5cf8c
  + Exports
Packit Service c5cf8c
    - Exporting to synthetic now ignores I/O and Misc objects.
Packit Service c5cf8c
  + PCI discovery
Packit Service c5cf8c
    - Separate OS device discovery from PCI discovery. Only the latter is disabled
Packit Service c5cf8c
      with --disable-pci at configure time. Both may be disabled with --disable-io.
Packit Service c5cf8c
    - The `linuxpci' component is now renamed into `linuxio'.
Packit Service c5cf8c
    - The old `libpci' component name from hwloc 1.6 is not supported anymore,
Packit Service c5cf8c
      only the `pci' name from hwloc 1.7 is now recognized.
Packit Service c5cf8c
    - The HWLOC_PCI_<domain>_<bus>_LOCALCPUS environment variables are superseded
Packit Service c5cf8c
      with a single HWLOC_PCI_LOCALITY where bus ranges may be specified.
Packit Service c5cf8c
    - Do not set PCI devices and bridges name automatically. Vendor and device
Packit Service c5cf8c
      names are already in info attributes.
Packit Service c5cf8c
  + Components and discovery
Packit Service c5cf8c
    - Add HWLOC_SYNTHETIC environment variable to enforce a synthetic topology
Packit Service c5cf8c
      as if hwloc_topology_set_synthetic() had been called.
Packit Service c5cf8c
    - HWLOC_COMPONENTS doesn't support xml or synthetic component attributes
Packit Service c5cf8c
      anymore, they should be passed in HWLOC_XMLFILE or HWLOC_SYNTHETIC instead.
Packit Service c5cf8c
    - HWLOC_COMPONENTS takes precedence over other environment variables
Packit Service c5cf8c
      for selecting components.
Packit Service c5cf8c
  + hwloc now requires a C99 compliant compiler.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.11.9
Packit Service c5cf8c
--------------
Packit Service c5cf8c
* Add support for Zhaoxin ZX-C and ZX-D processors in the x86 backend,
Packit Service c5cf8c
  thanks to Jeff Zhao for the patch.
Packit Service c5cf8c
* Fix AMD Epyc 24-core L3 cache locality in the x86 backend.
Packit Service c5cf8c
* Don't crash in the x86 backend when the CPUID vendor string is unknown.
Packit Service c5cf8c
* Fix the missing pu discovery support bit on some OS.
Packit Service c5cf8c
* Fix the management of the lstopoStyle info attribute for custom colors.
Packit Service c5cf8c
* Add verbose warnings when failing to load hwloc v2.0+ XMLs.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.11.8
Packit Service c5cf8c
--------------
Packit Service c5cf8c
* Multiple Solaris improvements, thanks to Maureen Chew for the help:
Packit Service c5cf8c
  + Detect caches on Sparc.
Packit Service c5cf8c
  + Properly detect allowed/disallowed PUs and NUMA nodes with processor sets.
Packit Service c5cf8c
  + Add hwloc_get_last_cpu_location() support for the current thread.
Packit Service c5cf8c
* Add support for CUDA compute capability 7.0 and fix support for 6.[12].
Packit Service c5cf8c
* Tools improvements
Packit Service c5cf8c
  + Fix search for objects by physical index in command-line tools.
Packit Service c5cf8c
  + Add missing "cpubind:get_thisthread_last_cpu_location" in the output
Packit Service c5cf8c
    of hwloc-info --support.
Packit Service c5cf8c
  + Add --pid and --name to specify target processes in hwloc-ps.
Packit Service c5cf8c
  + Display thread names in lstopo and hwloc-ps on Linux.
Packit Service c5cf8c
* Doc improvements
Packit Service c5cf8c
  + Add a FAQ entry about building on Windows.
Packit Service c5cf8c
  + Install missing sub-manpage for hwloc_obj_add_info() and
Packit Service c5cf8c
    hwloc_obj_get_info_by_name().
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.11.7
Packit Service c5cf8c
--------------
Packit Service c5cf8c
* Fix hwloc-bind --membind for CPU-less NUMA nodes (again).
Packit Service c5cf8c
  Thanks to Gilles Gouaillardet for reporting the issue.
Packit Service c5cf8c
* Fix a memory leak on IBM S/390 platforms running Linux.
Packit Service c5cf8c
* Fix a memory leak when forcing the x86 backend first on amd64/topoext
Packit Service c5cf8c
  platforms running Linux.
Packit Service c5cf8c
* Command-line tools now support "hbm" instead "numanode" for filtering
Packit Service c5cf8c
  only high-bandwidth memory nodes when selecting locations.
Packit Service c5cf8c
  + hwloc-bind also support --hbm and --no-hbm for filtering only or
Packit Service c5cf8c
    no HBM nodes.
Packit Service c5cf8c
  Thanks to Nicolas Denoyelle for the suggestion.
Packit Service c5cf8c
* Add --children and --descendants to hwloc-info for listing object
Packit Service c5cf8c
  children or object descendants of a specific type.
Packit Service c5cf8c
* Add --no-index, --index, --no-attrs, --attrs to disable/enable display
Packit Service c5cf8c
  of index numbers or attributes in the graphical lstopo output.
Packit Service c5cf8c
* Try to gather hwloc-dump-hwdata output from all possible locations
Packit Service c5cf8c
  in hwloc-gather-topology.
Packit Service c5cf8c
* Updates to the documentation of locations in hwloc(7) and
Packit Service c5cf8c
  command-line tools manpages.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.11.6
Packit Service c5cf8c
--------------
Packit Service c5cf8c
* Make the Linux discovery about twice faster, especially on the CPU side,
Packit Service c5cf8c
  by trying to avoid sysfs file accesses as much as possible.
Packit Service c5cf8c
* Add support for AMD Family 17h processors (Zen) SMT cores in the Linux
Packit Service c5cf8c
  and x86 backends.
Packit Service c5cf8c
* Add the HWLOC_TOPOLOGY_FLAG_THISSYSTEM_ALLOWED_RESOURCES flag (and the
Packit Service c5cf8c
  HWLOC_THISSYSTEM_ALLOWED_RESOURCES environment variable) for reading the
Packit Service c5cf8c
  set of allowed resources from the local operating system even if the
Packit Service c5cf8c
  topology was loaded from XML or synthetic.
Packit Service c5cf8c
* Fix hwloc_bitmap_set/clr_range() for infinite ranges that do not
Packit Service c5cf8c
  overlap currently defined ranges in the bitmap.
Packit Service c5cf8c
* Don't reset the lstopo zoom scale when moving the X11 window.
Packit Service c5cf8c
* lstopo now has --flags for manually setting topology flags.
Packit Service c5cf8c
* hwloc_get_depth_type() returns HWLOC_TYPE_DEPTH_UNKNOWN for Misc objects.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.11.5
Packit Service c5cf8c
--------------
Packit Service c5cf8c
* Add support for Knights Mill Xeon Phi, thanks to Piotr Luc for the patch.
Packit Service c5cf8c
* Reenable distance gathering on Solaris, disabled by mistake since v1.0.
Packit Service c5cf8c
  Thanks to TU Wien for the help.
Packit Service c5cf8c
* Fix hwloc_get_*obj*_inside_cpuset() functions to ignore objects with
Packit Service c5cf8c
  empty CPU sets, for instance, CPU-less NUMA nodes such as KNL MCDRAM.
Packit Service c5cf8c
  Thanks to Nicolas Denoyelle for the report.
Packit Service c5cf8c
* Fix XML import of multiple distance matrices.
Packit Service c5cf8c
* Add a FAQ entry about "hwloc is only a structural model, it ignores
Packit Service c5cf8c
  performance models, memory bandwidth, etc.?"
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.11.4
Packit Service c5cf8c
--------------
Packit Service c5cf8c
* Add MemoryMode and ClusterMode attributes in the Machine object on KNL.
Packit Service c5cf8c
  Add doc/examples/get-knl-modes.c for an example of retrieving them.
Packit Service c5cf8c
  Thanks to Grzegorz Andrejczuk.
Packit Service c5cf8c
* Fix Linux build with -m32 with respect to libudev.
Packit Service c5cf8c
  Thanks to Paul Hargrove for reporting the issue.
Packit Service c5cf8c
* Fix build with Visual Studio 2015, thanks to Eloi Gaudry for reporting
Packit Service c5cf8c
  the issue and providing the patch.
Packit Service c5cf8c
* Don't forget to display OS device children in the graphical lstopo.
Packit Service c5cf8c
* Fix a memory leak on Solaris, thanks to Bryon Gloden for the patch.
Packit Service c5cf8c
* Properly handle realloc() failures, thanks to Bryon Gloden for reporting
Packit Service c5cf8c
  the issue.
Packit Service c5cf8c
* Fix lstopo crash in ascii/fig/windows outputs when some objects have a
Packit Service c5cf8c
  lstopoStyle info attribute.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.11.3
Packit Service c5cf8c
--------------
Packit Service c5cf8c
* Bug fixes
Packit Service c5cf8c
  + Fix a memory leak on Linux S/390 hosts with books.
Packit Service c5cf8c
  + Fix /proc/mounts parsing on Linux by using mntent.h.
Packit Service c5cf8c
    Thanks to Nathan Hjelm for reporting the issue.
Packit Service c5cf8c
  + Fix a x86 infinite loop on VMware due to the x2APIC feature being
Packit Service c5cf8c
    advertised without actually being fully supported.
Packit Service c5cf8c
    Thanks to Jianjun Wen for reporting the problem and testing the patch.
Packit Service c5cf8c
  + Fix the return value of hwloc_alloc() on mmap() failure.
Packit Service c5cf8c
    Thanks to Hugo Brunie for reporting the issue.
Packit Service c5cf8c
  + Fix the return value of command-line tools in some error cases.
Packit Service c5cf8c
  + Do not break individual thread bindings during x86 backend discovery in a
Packit Service c5cf8c
    multithreaded process. Thanks to Farouk Mansouri for the report.
Packit Service c5cf8c
  + Fix hwloc-bind --membind for CPU-less NUMA nodes.
Packit Service c5cf8c
  + Fix some corner cases in the XML export/import of application userdata.
Packit Service c5cf8c
* API Improvements
Packit Service c5cf8c
  + Add HWLOC_MEMBIND_BYNODESET flag so that membind() functions accept
Packit Service c5cf8c
    either cpusets or nodesets.
Packit Service c5cf8c
  + Add hwloc_get_area_memlocation() to check where pages are actually
Packit Service c5cf8c
    allocated. Only implemented on Linux for now.
Packit Service c5cf8c
    - There's no _nodeset() variant, but the new flag HWLOC_MEMBIND_BYNODESET
Packit Service c5cf8c
      is supported.
Packit Service c5cf8c
  + Make hwloc_obj_type_sscanf() parse back everything that may be outputted
Packit Service c5cf8c
    by hwloc_obj_type_snprintf().
Packit Service c5cf8c
* Detection Improvements
Packit Service c5cf8c
  + Allow the x86 backend to add missing cache levels, so that it completes
Packit Service c5cf8c
    what the Solaris backend lacks.
Packit Service c5cf8c
    Thanks to Ryan Zezeski for reporting the issue.
Packit Service c5cf8c
  + Do not filter-out FibreChannel PCI adapters by default anymore.
Packit Service c5cf8c
    Thanks to Matt Muggeridge for the report.
Packit Service c5cf8c
  + Add support for CUDA compute capability 6.x.
Packit Service c5cf8c
* Tools
Packit Service c5cf8c
  + Add --support to hwloc-info to list supported features, just like with
Packit Service c5cf8c
    hwloc_topology_get_support().
Packit Service c5cf8c
    - Also add --objects and --topology to explicitly switch between the
Packit Service c5cf8c
      default modes.
Packit Service c5cf8c
  + Add --tid to let hwloc-bind operate on individual threads on Linux.
Packit Service c5cf8c
  + Add --nodeset to let hwloc-bind report memory binding as NUMA node sets.
Packit Service c5cf8c
  + hwloc-annotate and lstopo don't drop application userdata from XMLs anymore.
Packit Service c5cf8c
    - Add --cu to hwloc-annotate to drop these application userdata.
Packit Service c5cf8c
  + Make the hwloc-dump-hwdata dump directory configurable through configure
Packit Service c5cf8c
    options such as --runstatedir or --localstatedir.
Packit Service c5cf8c
* Misc Improvements
Packit Service c5cf8c
  + Add systemd service template contrib/systemd/hwloc-dump-hwdata.service
Packit Service c5cf8c
    for launching hwloc-dump-hwdata at boot on Linux.
Packit Service c5cf8c
    Thanks to Grzegorz Andrejczuk.
Packit Service c5cf8c
  + Add HWLOC_PLUGINS_BLACKLIST environment variable to prevent some plugins
Packit Service c5cf8c
    from being loaded. Thanks to Alexandre Denis for the suggestion.
Packit Service c5cf8c
  + Small improvements for various Windows build systems,
Packit Service c5cf8c
    thanks to Jonathan L Peyton and Marco Atzeri.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.11.2
Packit Service c5cf8c
--------------
Packit Service c5cf8c
* Improve support for Intel Knights Landing Xeon Phi on Linux:
Packit Service c5cf8c
  + Group local NUMA nodes of normal memory (DDR) and high-bandwidth memory
Packit Service c5cf8c
    (MCDRAM) together through "Cluster" groups so that the local MCDRAM is
Packit Service c5cf8c
    easy to find.
Packit Service c5cf8c
    - See "How do I find the local MCDRAM NUMA node on Intel Knights
Packit Service c5cf8c
      Landing Xeon Phi?" in the documentation.
Packit Service c5cf8c
    - For uniformity across all KNL configurations, always have a NUMA node
Packit Service c5cf8c
      object even if the host is UMA.
Packit Service c5cf8c
  + Fix the detection of the memory-side cache:
Packit Service c5cf8c
    - Add the hwloc-dump-hwdata superuser utility to dump SMBIOS information
Packit Service c5cf8c
      into /var/run/hwloc/ as root during boot, and load this dumped
Packit Service c5cf8c
      information from the hwloc library at runtime.
Packit Service c5cf8c
    - See "Why do I need hwloc-dump-hwdata for caches on Intel Knights
Packit Service c5cf8c
      Landing Xeon Phi?" in the documentation.
Packit Service c5cf8c
  Thanks to Grzegorz Andrejczuk for the patches and for the help.
Packit Service c5cf8c
* The x86 and linux backends may now be combined for discovering CPUs
Packit Service c5cf8c
  through x86 CPUID and memory from the Linux kernel.
Packit Service c5cf8c
  This is useful for working around buggy CPU information reported by Linux
Packit Service c5cf8c
  (for instance the AMD Bulldozer/Piledriver bug below).
Packit Service c5cf8c
  Combination is enabled by passing HWLOC_COMPONENTS=x86 in the environment.
Packit Service c5cf8c
* Fix L3 cache sharing on AMD Opteron 63xx (Piledriver) and 62xx (Bulldozer)
Packit Service c5cf8c
  in the x86 backend. Thanks to many users who helped.
Packit Service c5cf8c
* Fix the overzealous L3 cache sharing fix added to the x86 backend in 1.11.1
Packit Service c5cf8c
  for AMD Opteron 61xx (Magny-Cours) processors.
Packit Service c5cf8c
* The x86 backend may now add the info attribute Inclusive=0 or 1 to caches
Packit Service c5cf8c
  it discovers, or to caches discovered by other backends earlier.
Packit Service c5cf8c
  Thanks to Guillaume Beauchamp for the patch.
Packit Service c5cf8c
* Fix the management on alloc_membind() allocation failures on AIX, HP-UX
Packit Service c5cf8c
  and OSF/Tru64.
Packit Service c5cf8c
* Fix spurious failures to load with ENOMEM on AIX in case of Misc objects
Packit Service c5cf8c
  below PUs.
Packit Service c5cf8c
* lstopo improvements in X11 and Windows graphical mode:
Packit Service c5cf8c
  + Add + - f 1 shortcuts to manually zoom-in, zoom-out, reset the scale,
Packit Service c5cf8c
    or fit the entire window.
Packit Service c5cf8c
  + Display all keyboard shortcuts in the console.
Packit Service c5cf8c
* Debug messages may be disabled at runtime by passing HWLOC_DEBUG_VERBOSE=0
Packit Service c5cf8c
  in the environment when --enable-debug was passed to configure.
Packit Service c5cf8c
* Add a FAQ entry "What are these Group objects in my topology?".
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.11.1
Packit Service c5cf8c
--------------
Packit Service c5cf8c
* Detection fixes
Packit Service c5cf8c
  + Hardwire the topology of Fujitsu K-computer, FX10, FX100 servers to
Packit Service c5cf8c
    workaround buggy Linux kernels.
Packit Service c5cf8c
    Thanks to Takahiro Kawashima and Gilles Gouaillardet.
Packit Service c5cf8c
  + Fix L3 cache information on AMD Opteron 61xx Magny-Cours processors
Packit Service c5cf8c
    in the x86 backend. Thanks to Guillaume Beauchamp for the patch.
Packit Service c5cf8c
  + Detect block devices directly attached to PCI without a controller,
Packit Service c5cf8c
    for instance NVMe disks. Thanks to Barry M. Tannenbaum.
Packit Service c5cf8c
  + Add the PCISlot attribute to all PCI functions instead of only the
Packit Service c5cf8c
    first one.
Packit Service c5cf8c
* Miscellaneous internal fixes
Packit Service c5cf8c
  + Ignore PCI bridges that could fail assertions by reporting buggy
Packit Service c5cf8c
    secondary-subordinate bus numbers
Packit Service c5cf8c
    Thanks to George Bosilca for reporting the issue.
Packit Service c5cf8c
  + Fix an overzealous assertion when inserting an intermediate Group object
Packit Service c5cf8c
    while Groups are totally ignored.
Packit Service c5cf8c
  + Fix a memory leak on Linux on AMD processors with dual-core compute units.
Packit Service c5cf8c
    Thanks to Bob Benner.
Packit Service c5cf8c
  + Fix a memory leak on failure to load a xml diff file.
Packit Service c5cf8c
  + Fix some segfaults when inputting an invalid synthetic description.
Packit Service c5cf8c
  + Fix a segfault when plugins fail to find core symbols.
Packit Service c5cf8c
    Thanks to Guy Streeter.
Packit Service c5cf8c
* Many fixes and improvements in the Windows backend:
Packit Service c5cf8c
  + Fix the discovery of more than 32 processors and multiple processor
Packit Service c5cf8c
    groups. Thanks to Barry M. Tannenbaum for the help.
Packit Service c5cf8c
  + Add thread binding set support in case of multiple process groups.
Packit Service c5cf8c
  + Add thread binding get support.
Packit Service c5cf8c
  + Add get_last_cpu_location() support for the current thread.
Packit Service c5cf8c
  + Disable the unsupported process binding in case of multiple processor
Packit Service c5cf8c
    groups.
Packit Service c5cf8c
  + Fix/update the Visual Studio support under contrib/windows.
Packit Service c5cf8c
    Thanks to Eloi Gaudry for the help.
Packit Service c5cf8c
* Tools fixes
Packit Service c5cf8c
  + Fix a segfault when displaying logical indexes in the graphical lstopo.
Packit Service c5cf8c
    Thanks to Guillaume Mercier for reporting the issue.
Packit Service c5cf8c
  + Fix lstopo linking with X11 libraries, for instance on Mac OS X.
Packit Service c5cf8c
    Thanks to Scott Atchley and Pierre Ramet for reporting the issue.
Packit Service c5cf8c
  + hwloc-annotate, hwloc-diff and hwloc-patch do not drop unavailable
Packit Service c5cf8c
    resources from the output anymore and those may be annotated as well.
Packit Service c5cf8c
  + Command-line tools may now import XML from the standard input with -i -.xml
Packit Service c5cf8c
  + Add missing documentation for the hwloc-info --no-icaches option.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.11.0
Packit Service c5cf8c
--------------
Packit Service c5cf8c
* API
Packit Service c5cf8c
  + Socket objects are renamed into Package to align with the terminology
Packit Service c5cf8c
    used by processor vendors. The old HWLOC_OBJ_SOCKET type and "Socket"
Packit Service c5cf8c
    name are still supported for backward compatibility.
Packit Service c5cf8c
  + HWLOC_OBJ_NODE is replaced with HWLOC_OBJ_NUMANODE for clarification.
Packit Service c5cf8c
    HWLOC_OBJ_NODE is still supported for backward compatibility.
Packit Service c5cf8c
    "Node" and "NUMANode" strings are supported as in earlier releases.
Packit Service c5cf8c
* Detection improvements
Packit Service c5cf8c
  + Add support for Intel Knights Landing Xeon Phi.
Packit Service c5cf8c
    Thanks to Grzegorz Andrejczuk and Lukasz Anaczkowski.
Packit Service c5cf8c
  + Add Vendor, Model, Revision, SerialNumber, Type and LinuxDeviceID
Packit Service c5cf8c
    info attributes to Block OS devices on Linux. Thanks to Vineet Pedaballe
Packit Service c5cf8c
    for the help.
Packit Service c5cf8c
    - Add --disable-libudev to avoid dependency on the libudev library.
Packit Service c5cf8c
  + Add "MemoryModule" Misc objects with information about DIMMs, on Linux
Packit Service c5cf8c
    when privileged and when I/O is enabled.
Packit Service c5cf8c
    Thanks to Vineet Pedaballe for the help.
Packit Service c5cf8c
  + Add a PCISlot attribute to PCI devices on Linux when supported to
Packit Service c5cf8c
    identify the physical PCI slot where the board is plugged.
Packit Service c5cf8c
  + Add CPUStepping info attribute on x86 processors,
Packit Service c5cf8c
    thanks to Thomas Röhl for the suggestion.
Packit Service c5cf8c
  + Ignore the device-tree on non-Power architectures to avoid buggy
Packit Service c5cf8c
    detection on ARM. Thanks to Orion Poplawski for reporting the issue.
Packit Service c5cf8c
  + Work-around buggy Xeon E5v3 BIOS reporting invalid PCI-NUMA affinity
Packit Service c5cf8c
    for the PCI links on the second processor.
Packit Service c5cf8c
  + Add support for CUDA compute capability 5.x, thanks Benjamin Worpitz.
Packit Service c5cf8c
  + Many fixes to the x86 backend
Packit Service c5cf8c
    - Add L1i and fix L2/L3 type on old AMD processors without topoext support.
Packit Service c5cf8c
    - Fix Intel CPU family and model numbers when basic family isn't 6 or 15.
Packit Service c5cf8c
    - Fix package IDs on recent AMD processors.
Packit Service c5cf8c
    - Fix misc issues due to incomplete APIC IDs on x2APIC processors.
Packit Service c5cf8c
    - Avoid buggy discovery on old SGI Altix UVs with non-unique APIC IDs.
Packit Service c5cf8c
  + Gather total machine memory on NetBSD.
Packit Service c5cf8c
* Tools
Packit Service c5cf8c
  + lstopo
Packit Service c5cf8c
    - Collapse identical PCI devices unless --no-collapse is given.
Packit Service c5cf8c
      This avoids gigantic outputs when a PCI device contains dozens of
Packit Service c5cf8c
      identical virtual functions.
Packit Service c5cf8c
    - The ASCII art output is now called "ascii", for instance in
Packit Service c5cf8c
      "lstopo -.ascii".
Packit Service c5cf8c
      The former "txt" extension is retained for backward compatibility.
Packit Service c5cf8c
    - Automatically scales graphical box width to the inner text in Cairo,
Packit Service c5cf8c
      ASCII and Windows outputs.
Packit Service c5cf8c
    - Add --rect to lstopo to force rectangular layout even for NUMA nodes.
Packit Service c5cf8c
    - Add --restrict-flags to configure the behavior of --restrict.
Packit Service c5cf8c
    - Objects may have a "Type" info attribute to specify a better type name
Packit Service c5cf8c
      and display it in lstopo.
Packit Service c5cf8c
    - Really export all verbose information to the given output file.
Packit Service c5cf8c
  + hwloc-annotate
Packit Service c5cf8c
    - May now operate on all types of objects, including I/O.
Packit Service c5cf8c
    - May now insert Misc objects in the topology.
Packit Service c5cf8c
    - Do not drop instruction caches and I/O devices from the output anymore.
Packit Service c5cf8c
  + Fix lstopo path in hwloc-gather-topology after install.
Packit Service c5cf8c
* Misc
Packit Service c5cf8c
  + Fix hwloc/cudart.h for machines with multiple PCI domains,
Packit Service c5cf8c
    thanks to Imre Kerr for reporting the problem.
Packit Service c5cf8c
  + Fix PCI Bridge-specific depth attribute.
Packit Service c5cf8c
  + Fix hwloc_bitmap_intersect() for two infinite bitmaps.
Packit Service c5cf8c
  + Fix some corner cases in the building of levels on large NUMA machines
Packit Service c5cf8c
    with non-uniform NUMA groups and I/Os.
Packit Service c5cf8c
  + Improve the performance of object insertion by cpuset for large
Packit Service c5cf8c
    topologies.
Packit Service c5cf8c
  + Prefix verbose XML import errors with the source name.
Packit Service c5cf8c
  + Improve pkg-config checks and error messages.
Packit Service c5cf8c
  + Fix excluding after a component with an argument in the HWLOC_COMPONENTS
Packit Service c5cf8c
    environment variable.
Packit Service c5cf8c
* Documentation
Packit Service c5cf8c
  + Fix the recommended way in documentation and examples to allocate memory
Packit Service c5cf8c
    on some node, it should use HWLOC_MEMBIND_BIND.
Packit Service c5cf8c
    Thanks to Nicolas Bouzat for reporting the issue.
Packit Service c5cf8c
  + Add a "Miscellaneous objects" section in the documentation.
Packit Service c5cf8c
  + Add a FAQ entry "What happens to my topology if I disable symmetric
Packit Service c5cf8c
    multithreading, hyper-threading, etc. ?" to the documentation.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.10.1
Packit Service c5cf8c
--------------
Packit Service c5cf8c
* Actually remove disallowed NUMA nodes from nodesets when the whole-system
Packit Service c5cf8c
  flag isn't enabled.
Packit Service c5cf8c
* Fix the gathering of PCI domains. Thanks to James Custer for reporting
Packit Service c5cf8c
  the issue and providing a patch.
Packit Service c5cf8c
* Fix the merging of identical parent and child in presence of Misc objects.
Packit Service c5cf8c
  Thanks to Dave Love for reporting the issue.
Packit Service c5cf8c
* Fix some misordering of children when merging with ignore_keep_structure()
Packit Service c5cf8c
  in partially allowed topologies.
Packit Service c5cf8c
* Fix an overzealous assertion in the debug code when running on a single-PU
Packit Service c5cf8c
  host with I/O. Thanks to Thomas Van Doren for reporting the issue.
Packit Service c5cf8c
* Don't forget to setup NUMA node object nodesets in x86 backend (for BSDs)
Packit Service c5cf8c
  and OSF/Tru64 backend.
Packit Service c5cf8c
* Fix cpuid-x86 build error with gcc -O3 on x86-32. Thanks to Thomas Van Doren
Packit Service c5cf8c
  for reporting the issue.
Packit Service c5cf8c
* Fix support for future very large caches in the x86 backend.
Packit Service c5cf8c
* Fix vendor/device names for SR-IOV PCI devices on Linux.
Packit Service c5cf8c
* Fix an unlikely crash in case of buggy hierarchical distance matrix.
Packit Service c5cf8c
* Fix PU os_index on some AIX releases. Thanks to Hendryk Bockelmann and
Packit Service c5cf8c
  Erik Schnetter for helping debugging.
Packit Service c5cf8c
* Fix hwloc_bitmap_isincluded() in case of infinite sets.
Packit Service c5cf8c
* Change hwloc-ls.desktop into a lstopo.desktop and only install it if
Packit Service c5cf8c
  lstopo is built with Cairo/X11 support. It cannot work with a non-graphical
Packit Service c5cf8c
  lstopo or hwloc-ls.
Packit Service c5cf8c
* Add support for the renaming of Socket into Package in future releases.
Packit Service c5cf8c
* Add support for the replacement of HWLOC_OBJ_NODE with HWLOC_OBJ_NUMANODE
Packit Service c5cf8c
  in future releases.
Packit Service c5cf8c
* Clarify the documentation of distance matrices in hwloc.h and in the manpage
Packit Service c5cf8c
  of the hwloc-distances. Thanks to Dave Love for the suggestion.
Packit Service c5cf8c
* Improve some error messages by displaying more information about the
Packit Service c5cf8c
  hwloc library in use.
Packit Service c5cf8c
* Document how to deal with the ABI break when upgrading to the upcoming 2.0
Packit Service c5cf8c
  See "How do I handle ABI breaks and API upgrades ?" in the FAQ.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.10.0
Packit Service c5cf8c
--------------
Packit Service c5cf8c
* API
Packit Service c5cf8c
  + Add hwloc_topology_export_synthetic() to export a topology to a
Packit Service c5cf8c
    synthetic string without using lstopo. See the Synthetic topologies
Packit Service c5cf8c
    section in the documentation.
Packit Service c5cf8c
  + Add hwloc_topology_set/get_userdata() to let the application save
Packit Service c5cf8c
    a private pointer in the topology whenever it needs a way to find
Packit Service c5cf8c
    its own object corresponding to a topology.
Packit Service c5cf8c
  + Add hwloc_get_numanode_obj_by_os_index() and document that this function
Packit Service c5cf8c
    as well as hwloc_get_pu_obj_by_os_index() are good at converting
Packit Service c5cf8c
    nodesets and cpusets into objects.
Packit Service c5cf8c
  + hwloc_distrib() does not ignore any objects anymore when there are
Packit Service c5cf8c
    too many of them. They get merged with others instead.
Packit Service c5cf8c
    Thanks to Tim Creech for reporting the issue.
Packit Service c5cf8c
* Tools
Packit Service c5cf8c
  + hwloc-bind --get <command-line> now executes the command after displaying
Packit Service c5cf8c
    the binding instead of ignoring the command entirely.
Packit Service c5cf8c
    Thanks to John Donners for the suggestion.
Packit Service c5cf8c
  + Clarify that memory sizes shown in lstopo are local by default
Packit Service c5cf8c
    unless specified (total memory added in the root object).
Packit Service c5cf8c
* Synthetic topologies
Packit Service c5cf8c
  + Synthetic topology descriptions may now specify attributes such as
Packit Service c5cf8c
    memory sizes and OS indexes. See the Synthetic topologies section
Packit Service c5cf8c
    in the documentation.
Packit Service c5cf8c
  + lstopo now exports in this fully-detailed format by default.
Packit Service c5cf8c
    The new option --export-synthetic-flags may be used to revert
Packit Service c5cf8c
    back the old format.
Packit Service c5cf8c
* Documentation
Packit Service c5cf8c
  + Add the doc/examples/ subdirectory with several real-life examples,
Packit Service c5cf8c
    including the already existing hwloc-hello.C for basics.
Packit Service c5cf8c
    Thanks to Rob Aulwes for the suggestion.
Packit Service c5cf8c
  + Improve the documentation of CPU and memory binding in the API.
Packit Service c5cf8c
  + Add a FAQ entry about operating system errors, especially on AMD
Packit Service c5cf8c
    platforms with buggy cache information.
Packit Service c5cf8c
  + Add a FAQ entry about loading many topologies in a single program.
Packit Service c5cf8c
* Misc
Packit Service c5cf8c
  + Work around buggy Linux kernels reporting 2 sockets instead
Packit Service c5cf8c
    1 socket with 2 NUMA nodes for each Xeon E5 v3 (Haswell) processor.
Packit Service c5cf8c
  + pciutils/libpci support is now removed since libpciaccess works
Packit Service c5cf8c
    well and there's also a Linux-specific PCI backend. For the record,
Packit Service c5cf8c
    pciutils was GPL and therefore disabled by default since v1.6.2.
Packit Service c5cf8c
  + Add --disable-cpuid configure flag to work around buggy processor
Packit Service c5cf8c
    simulators reporting invalid CPUID information.
Packit Service c5cf8c
    Thanks for Andrew Friedley for reporting the issue.
Packit Service c5cf8c
  + Fix a racy use of libltdl when manipulating multiple topologies in
Packit Service c5cf8c
    different threads.
Packit Service c5cf8c
    Thanks to Andra Hugo for reporting the issue and testing patches.
Packit Service c5cf8c
  + Fix some build failures in private/misc.h.
Packit Service c5cf8c
    Thanks to Pavan Balaji and Ralph Castain for the reports.
Packit Service c5cf8c
  + Fix failures to detect X11/Xutil.h on some Solaris platforms.
Packit Service c5cf8c
    Thanks to Siegmar Gross for reporting the failure.
Packit Service c5cf8c
  + The plugin ABI has changed, this release will not load plugins
Packit Service c5cf8c
    built against previous hwloc releases.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.9.1
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Fix a crash when the PCI locality is invalid. Attach to the root object
Packit Service c5cf8c
  instead. Thanks to Nicolas Denoyelle for reporting the issue.
Packit Service c5cf8c
* Fix -f in lstopo manpage. Thanks to Jirka Hladky for reporting the issue.
Packit Service c5cf8c
* Fix hwloc_obj_type_sscanf() and others when strncasecmp() is not properly
Packit Service c5cf8c
  available. Thanks to Nick Papior Andersen for reporting the problem.
Packit Service c5cf8c
* Mark Linux file descriptors as close-on-exec to avoid leaks on exec.
Packit Service c5cf8c
* Fix some minor memory leaks.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.9.0
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* API
Packit Service c5cf8c
  + Add hwloc_obj_type_sscanf() to extend hwloc_obj_type_of_string() with
Packit Service c5cf8c
    type-specific attributes such as Cache/Group depth and Cache type.
Packit Service c5cf8c
    hwloc_obj_type_of_string() is moved to hwloc/deprecated.h.
Packit Service c5cf8c
  + Add hwloc_linux_get_tid_last_cpu_location() for retrieving the
Packit Service c5cf8c
    last CPU where a Linux thread given by TID ran.
Packit Service c5cf8c
  + Add hwloc_distrib() to extend the old hwloc_distribute[v]() functions.
Packit Service c5cf8c
    hwloc_distribute[v]() is moved to hwloc/deprecated.h.
Packit Service c5cf8c
  + Don't mix total and local memory when displaying verbose object attributes
Packit Service c5cf8c
    with hwloc_obj_attr_snprintf() or in lstopo.
Packit Service c5cf8c
* Backends
Packit Service c5cf8c
  + Add CPUVendor, CPUModelNumber and CPUFamilyNumber info attributes for
Packit Service c5cf8c
    x86, ia64 and Xeon Phi sockets on Linux, to extend the x86-specific
Packit Service c5cf8c
    support added in v1.8.1. Requested by Ralph Castain.
Packit Service c5cf8c
  + Add many CPU- and Platform-related info attributes on ARM and POWER
Packit Service c5cf8c
    platforms, in the Machine and Socket objects.
Packit Service c5cf8c
  + Add CUDA info attributes describing the number of multiprocessors and
Packit Service c5cf8c
    cores and the size of the global, shared and L2 cache memories in CUDA
Packit Service c5cf8c
    OS devices.
Packit Service c5cf8c
  + Add OpenCL info attributes describing the number of compute units and
Packit Service c5cf8c
    the global memory size in OpenCL OS devices.
Packit Service c5cf8c
  + The synthetic backend now accepts extended types such as L2Cache, L1i or
Packit Service c5cf8c
    Group3. lstopo also exports synthetic strings using these extended types.
Packit Service c5cf8c
* Tools
Packit Service c5cf8c
  + lstopo
Packit Service c5cf8c
    - Do not overwrite output files by default anymore.
Packit Service c5cf8c
      Pass -f or --force to enforce it.
Packit Service c5cf8c
    - Display OpenCL, CUDA and Xeon Phi numbers of cores and memory sizes
Packit Service c5cf8c
      in the graphical output.
Packit Service c5cf8c
    - Fix export to stdout when specifying a Cairo-based output type
Packit Service c5cf8c
      with --of.
Packit Service c5cf8c
  + hwloc-ps
Packit Service c5cf8c
    - Add -e or --get-last-cpu-location to report where processes/threads
Packit Service c5cf8c
      run instead of where they are bound.
Packit Service c5cf8c
    - Report locations as likely-more-useful objects such as Cores or Sockets
Packit Service c5cf8c
      instead of Caches when possible.
Packit Service c5cf8c
  + hwloc-bind
Packit Service c5cf8c
    - Fix failure on Windows when not using --pid.
Packit Service c5cf8c
    - Add -e as a synonym to --get-last-cpu-location.
Packit Service c5cf8c
  + hwloc-distrib
Packit Service c5cf8c
    - Add --reverse to distribute using last objects first and singlify
Packit Service c5cf8c
      into last bits first. Thanks to Jirka Hladky for the suggestion.
Packit Service c5cf8c
  + hwloc-info
Packit Service c5cf8c
    - Report unified caches when looking for data or instruction cache
Packit Service c5cf8c
      ancestor objects.
Packit Service c5cf8c
* Misc
Packit Service c5cf8c
  + Add experimental Visual Studio support under contrib/windows.
Packit Service c5cf8c
    Thanks to Eloi Gaudry for his help and for providing the first draft.
Packit Service c5cf8c
  + Fix some overzealous assertions and warnings about the ordering of
Packit Service c5cf8c
    objects on a level with respect to cpusets. The ordering is only
Packit Service c5cf8c
    guaranteed for complete cpusets (based on the first bit in sets).
Packit Service c5cf8c
  + Fix some memory leaks when importing xml diffs and when exporting a
Packit Service c5cf8c
    "too complex" entry.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.8.1
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Fix the cpuid code on Windows 64bits so that the x86 backend gets
Packit Service c5cf8c
  enabled as expected and can populate CPU information.
Packit Service c5cf8c
  Thanks to Robin Scher for reporting the problem.
Packit Service c5cf8c
* Add CPUVendor/CPUModelNumber/CPUFamilyNumber attributes when running
Packit Service c5cf8c
  on x86 architecture. Thanks to Ralph Castain for the suggestion.
Packit Service c5cf8c
* Work around buggy BIOS reporting duplicate NUMA nodes on Linux.
Packit Service c5cf8c
  Thanks to Jeff Becker for reporting the problem and testing the patch.
Packit Service c5cf8c
* Add a name to the lstopo graphical window. Thanks to Michael Prokop
Packit Service c5cf8c
  for reporting the issue.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.8.0
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* New components
Packit Service c5cf8c
  + Add the "linuxpci" component that always works on Linux even when
Packit Service c5cf8c
    libpciaccess and libpci aren't available (and even with a modified
Packit Service c5cf8c
    file-system root). By default the old "pci" component runs first
Packit Service c5cf8c
    because "linuxpci" lacks device names (obj->name is always NULL).
Packit Service c5cf8c
* API
Packit Service c5cf8c
  + Add the topology difference API in hwloc/diff.h for manipulating
Packit Service c5cf8c
    many similar topologies.
Packit Service c5cf8c
  + Add hwloc_topology_dup() for duplicating an entire topology.
Packit Service c5cf8c
  + hwloc.h and hwloc/helper.h have been reorganized to clarify the
Packit Service c5cf8c
    documentation sections. The actual inline code has moved out of hwloc.h
Packit Service c5cf8c
    into the new hwloc/inlines.h.
Packit Service c5cf8c
  + Deprecated functions are now in hwloc/deprecated.h, and not in the
Packit Service c5cf8c
    official documentation anymore.
Packit Service c5cf8c
* Tools
Packit Service c5cf8c
  + Add hwloc-diff and hwloc-patch tools together with the new diff API.
Packit Service c5cf8c
  + Add hwloc-compress-dir to (de)compress an entire directory of XML files
Packit Service c5cf8c
    using hwloc-diff and hwloc-patch.
Packit Service c5cf8c
  + Object colors in the graphical output of lstopo may be changed by adding
Packit Service c5cf8c
    a "lstopoStyle" info attribute. See CUSTOM COLORS in the lstopo(1) manpage
Packit Service c5cf8c
    for details. Thanks to Jirka Hladky for discussing the idea.
Packit Service c5cf8c
  + hwloc-gather-topology may now gather I/O-related files on Linux when
Packit Service c5cf8c
    --io is given. Only the linuxpci component supports discovering I/O
Packit Service c5cf8c
    objects from these extended tarballs.
Packit Service c5cf8c
  + hwloc-annotate now supports --ri to remove/replace info attributes with
Packit Service c5cf8c
    a given name.
Packit Service c5cf8c
  + hwloc-info supports "root" and "all" special locations for dumping
Packit Service c5cf8c
    information about the root object.
Packit Service c5cf8c
  + lstopo now supports --append-legend to append custom lines of text
Packit Service c5cf8c
    to the legend in the graphical output. Thanks to Jirka Hladky for
Packit Service c5cf8c
    discussing the idea.
Packit Service c5cf8c
  + hwloc-calc and friends have a more robust parsing of locations given
Packit Service c5cf8c
    on the command-line and they report useful error messages about it.
Packit Service c5cf8c
  + Add --whole-system to hwloc-bind, hwloc-calc, hwloc-distances and
Packit Service c5cf8c
    hwloc-distrib, and add --restrict to hwloc-bind for uniformity among
Packit Service c5cf8c
    tools.
Packit Service c5cf8c
* Misc
Packit Service c5cf8c
  + Calling hwloc_topology_load() or hwloc_topology_set_*() on an already
Packit Service c5cf8c
    loaded topology now returns an error (deprecated since release 1.6.1).
Packit Service c5cf8c
  + Fix the initialisation of cpusets and nodesets in Group objects added
Packit Service c5cf8c
    when inserting PCI hostbridges.
Packit Service c5cf8c
  + Never merge Group objects that were added explicitly by the user with
Packit Service c5cf8c
    hwloc_custom_insert_group_object_by_parent().
Packit Service c5cf8c
  + Add a sanity check during dynamic plugin loading to prevent some
Packit Service c5cf8c
    crashes when hwloc is dynamically loaded by another plugin mechanisms.
Packit Service c5cf8c
  + Add --with-hwloc-plugins-path to specify the install/load directories
Packit Service c5cf8c
    of plugins.
Packit Service c5cf8c
  + Add the MICSerialNumber info attribute to the root object when running
Packit Service c5cf8c
    hwloc inside a Xeon Phi to match the same attribute in the MIC OS device
Packit Service c5cf8c
    when running in the host.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.7.2
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Do not create invalid block OS devices on very old Linux kernel such
Packit Service c5cf8c
  as RHEL4 2.6.9.
Packit Service c5cf8c
* Fix PCI subvendor/device IDs.
Packit Service c5cf8c
* Fix the management of Misc objects inserted by parent.
Packit Service c5cf8c
  Thanks to Jirka Hladky for reporting the problem.
Packit Service c5cf8c
* Add a Port<n>State into attribute to OpenFabrics OS devices.
Packit Service c5cf8c
* Add a MICSerialNumber info attribute to Xeon PHI/MIC OS devices.
Packit Service c5cf8c
* Improve verbose error messages when failing to load from XML.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.7.1
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Fix a failed assertion in the distance grouping code when loading a XML
Packit Service c5cf8c
  file that already contains some groups.
Packit Service c5cf8c
  Thanks to Laercio Lima Pilla for reporting the problem.
Packit Service c5cf8c
* Remove unexpected Group objects when loading XML topologies with I/O
Packit Service c5cf8c
  objects and NUMA distances.
Packit Service c5cf8c
  Thanks to Elena Elkina for reporting the problem and testing patches.
Packit Service c5cf8c
* Fix PCI link speed discovery when using libpciaccess.
Packit Service c5cf8c
* Fix invalid libpciaccess virtual function device/vendor IDs when using
Packit Service c5cf8c
  SR-IOV PCI devices on Linux.
Packit Service c5cf8c
* Fix GL component build with old NVCtrl releases.
Packit Service c5cf8c
  Thanks to Jirka Hladky for reporting the problem.
Packit Service c5cf8c
* Fix embedding breakage caused by libltdl.
Packit Service c5cf8c
  Thanks to Pavan Balaji for reporting the problem.
Packit Service c5cf8c
* Always use the system-wide libltdl instead of shipping one inside hwloc.
Packit Service c5cf8c
* Document issues when enabling plugins while embedding hwloc in another
Packit Service c5cf8c
  project, in the documentation section Embedding hwloc in Other Software.
Packit Service c5cf8c
* Add a FAQ entry "How to get useful topology information on NetBSD?"
Packit Service c5cf8c
  in the documentation.
Packit Service c5cf8c
* Somes fixes in the renaming code for embedding.
Packit Service c5cf8c
* Miscellaneous minor build fixes.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.7.0
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* New operating system backends
Packit Service c5cf8c
  + Add BlueGene/Q compute node kernel (CNK) support. See the FAQ in the
Packit Service c5cf8c
    documentation for details. Thanks to Jeff Hammond, Christopher Samuel
Packit Service c5cf8c
    and Erik Schnetter for their help.
Packit Service c5cf8c
  + Add NetBSD support, thanks to Aleksej Saushev.
Packit Service c5cf8c
* New I/O device discovery
Packit Service c5cf8c
  + Add co-processor OS devices such as "mic0" for Intel Xeon Phi (MIC)
Packit Service c5cf8c
    on Linux. Thanks to Jerome Vienne for helping.
Packit Service c5cf8c
  + Add co-processor OS devices such as "cuda0" for NVIDIA CUDA-capable GPUs.
Packit Service c5cf8c
  + Add co-processor OS devices such as "opencl0d0" for OpenCL GPU devices
Packit Service c5cf8c
    on the AMD OpenCL implementation.
Packit Service c5cf8c
  + Add GPU OS devices such as ":0.0" for NVIDIA X11 displays.
Packit Service c5cf8c
  + Add GPU OS devices such as "nvml0" for NVIDIA GPUs.
Packit Service c5cf8c
    Thanks to Marwan Abdellah and Stefan Eilemann for helping.
Packit Service c5cf8c
  These new OS devices have some string info attributes such as CoProcType,
Packit Service c5cf8c
  GPUModel, etc. to better identify them.
Packit Service c5cf8c
  See the I/O Devices and Attributes documentation sections for details.
Packit Service c5cf8c
* New components
Packit Service c5cf8c
  + Add the "opencl", "cuda", "nvml" and "gl" components for I/O device
Packit Service c5cf8c
    discovery.
Packit Service c5cf8c
  + "nvml" also improves the discovery of NVIDIA GPU PCIe link speed.
Packit Service c5cf8c
  All of these new components may be built as plugins. They may also be
Packit Service c5cf8c
  disabled entirely by passing --disable-opencl/cuda/nvml/gl to configure.
Packit Service c5cf8c
  See the I/O Devices, Components and Plugins, and FAQ documentation
Packit Service c5cf8c
  sections for details.
Packit Service c5cf8c
* API
Packit Service c5cf8c
  + Add hwloc_topology_get_flags().
Packit Service c5cf8c
  + Add hwloc/plugins.h for building external plugins.
Packit Service c5cf8c
    See the Adding new discovery components and plugins section.
Packit Service c5cf8c
* Interoperability
Packit Service c5cf8c
  + Add hwloc/opencl.h, hwloc/nvml.h, hwloc/gl.h and hwloc/intel-mic.h
Packit Service c5cf8c
    to retrieve the locality of OS devices that correspond to AMD OpenCL
Packit Service c5cf8c
    GPU devices or indexes, to NVML devices or indexes, to NVIDIA X11
Packit Service c5cf8c
    displays, or to Intel Xeon Phi (MIC) device indexes.
Packit Service c5cf8c
  + Add new helpers in hwloc/cuda.h and hwloc/cudart.h to convert
Packit Service c5cf8c
    between CUDA devices or indexes and hwloc OS devices.
Packit Service c5cf8c
  + Add hwloc_ibv_get_device_osdev() and clarify the requirements
Packit Service c5cf8c
    of the OpenFabrics Verbs helpers in hwloc/openfabrics-verbs.h.
Packit Service c5cf8c
* Tools
Packit Service c5cf8c
  + hwloc-info is not only a synonym of lstopo -s anymore, it also
Packit Service c5cf8c
    dumps information about objects given on the command-line.
Packit Service c5cf8c
* Documentation
Packit Service c5cf8c
  + Add a section "Existing components and plugins".
Packit Service c5cf8c
  + Add a list of common OS devices in section "Software devices".
Packit Service c5cf8c
  + Add a new FAQ entry "Why is lstopo slow?" about lstopo slowness
Packit Service c5cf8c
    issues because of GPUs.
Packit Service c5cf8c
  + Clarify the documentation of inline helpers in hwloc/myriexpress.h
Packit Service c5cf8c
    and hwloc/openfabrics-verbs.h.
Packit Service c5cf8c
* Misc
Packit Service c5cf8c
  + Improve cache detection on AIX.
Packit Service c5cf8c
  + The HWLOC_COMPONENTS variable now excludes the components whose
Packit Service c5cf8c
    names are prefixed with '-'.
Packit Service c5cf8c
  + lstopo --ignore PU now works when displaying the topology in
Packit Service c5cf8c
    graphical and textual mode (not when exporting to XML).
Packit Service c5cf8c
  + Make sure I/O options always appear in lstopo usage, not only when
Packit Service c5cf8c
    using pciutils/libpci.
Packit Service c5cf8c
  + Remove some unneeded Linux specific includes from some interoperability
Packit Service c5cf8c
    headers.
Packit Service c5cf8c
  + Fix some inconsistencies in hwloc-distrib and hwloc-assembler-remote
Packit Service c5cf8c
    manpages. Thanks to Guy Streeter for the report.
Packit Service c5cf8c
  + Fix a memory leak on AIX when getting memory binding.
Packit Service c5cf8c
  + Fix many small memory leaks on Linux.
Packit Service c5cf8c
  + The `libpci' component is now called `pci' but the old name is still
Packit Service c5cf8c
    accepted in the HWLOC_COMPONENTS variable for backward compatibility.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.6.2
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Use libpciaccess instead of pciutils/libpci by default for I/O discovery.
Packit Service c5cf8c
  pciutils/libpci is only used if --enable-libpci is given to configure
Packit Service c5cf8c
  because its GPL license may taint hwloc. See the Installation section
Packit Service c5cf8c
  in the documentation for details.
Packit Service c5cf8c
* Fix get_cpubind on Solaris when bound to a single PU with
Packit Service c5cf8c
  processor_bind(). Thanks to Eugene Loh for reporting the problem
Packit Service c5cf8c
  and providing a patch.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.6.1
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Fix some crash or buggy detection in the x86 backend when Linux
Packit Service c5cf8c
  cgroups/cpusets restrict the available CPUs.
Packit Service c5cf8c
* Fix the pkg-config output with --libs --static.
Packit Service c5cf8c
  Thanks to Erik Schnetter for reporting one of the problems.
Packit Service c5cf8c
* Fix the output of hwloc-calc -H --hierarchical when using logical
Packit Service c5cf8c
  indexes in the output.
Packit Service c5cf8c
* Calling hwloc_topology_load() multiple times on the same topology
Packit Service c5cf8c
  is officially deprecated. hwloc will warn in such cases.
Packit Service c5cf8c
* Add some documentation about existing plugins/components, package
Packit Service c5cf8c
  dependencies, and I/O devices specification on the command-line.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.6.0
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Major changes
Packit Service c5cf8c
  + Reorganize the backend infrastructure to support dynamic selection
Packit Service c5cf8c
    of components and dynamic loading of plugins. For details, see the
Packit Service c5cf8c
    new documentation section Components and plugins.
Packit Service c5cf8c
    - The HWLOC_COMPONENTS variable lets one replace the default discovery
Packit Service c5cf8c
      components.
Packit Service c5cf8c
    - Dynamic loading of plugins may be enabled with --enable-plugins
Packit Service c5cf8c
      (except on AIX and Windows). It will build libxml2 and libpci
Packit Service c5cf8c
      support as separated modules. This helps reducing the dependencies
Packit Service c5cf8c
      of the core hwloc library when distributed as a binary package.
Packit Service c5cf8c
* Backends
Packit Service c5cf8c
  + Add CPUModel detection on Darwin and x86/FreeBSD.
Packit Service c5cf8c
    Thanks to Robin Scher for providing ways to implement this.
Packit Service c5cf8c
  + The x86 backend now adds CPUModel info attributes to socket objects
Packit Service c5cf8c
    created by other backends that do not natively support this attribute.
Packit Service c5cf8c
  + Fix detection on FreeBSD in case of cpuset restriction. Thanks to
Packit Service c5cf8c
    Sebastian Kuzminsky for reporting the problem.
Packit Service c5cf8c
* XML
Packit Service c5cf8c
  + Add hwloc_topology_set_userdata_import/export_callback(),
Packit Service c5cf8c
    hwloc_export_obj_userdata() and _userdata_base64() to let
Packit Service c5cf8c
    applications specify how to save/restore the custom data they placed
Packit Service c5cf8c
    in the userdata private pointer field of hwloc objects.
Packit Service c5cf8c
* Tools
Packit Service c5cf8c
  + Add hwloc-annotate program to add string info attributes to XML
Packit Service c5cf8c
    topologies.
Packit Service c5cf8c
  + Add --pid-cmd to hwloc-ps to append the output of a command to each
Packit Service c5cf8c
    PID line. May be used for showing Open MPI process ranks, see the
Packit Service c5cf8c
    hwloc-ps(1) manpage for details.
Packit Service c5cf8c
  + hwloc-bind now exits with an error if binding fails; the executable
Packit Service c5cf8c
    is not launched unless binding suceeeded or --force was given.
Packit Service c5cf8c
  + Add --quiet to hwloc-calc and hwloc-bind to hide non-fatal error
Packit Service c5cf8c
    messages.
Packit Service c5cf8c
  + Fix command-line pid support in windows tools.
Packit Service c5cf8c
  + All programs accept --verbose as a synonym to -v.
Packit Service c5cf8c
* Misc
Packit Service c5cf8c
  + Fix some DIR descriptor leaks on Linux.
Packit Service c5cf8c
  + Fix I/O device lists when some were filtered out after a XML import.
Packit Service c5cf8c
  + Fix the removal of I/O objects when importing a I/O-enabled XML topology
Packit Service c5cf8c
    without any I/O topology flag.
Packit Service c5cf8c
  + When merging objects with HWLOC_IGNORE_TYPE_KEEP_STRUCTURE or
Packit Service c5cf8c
    lstopo --merge, compare object types before deciding which one of two
Packit Service c5cf8c
    identical object to remove (e.g. keep sockets in favor of caches).
Packit Service c5cf8c
  + Add some GUID- and LID-related info attributes to OpenFabrics
Packit Service c5cf8c
    OS devices.
Packit Service c5cf8c
  + Only add CPUType socket attributes on Solaris/Sparc. Other cases
Packit Service c5cf8c
    don't report reliable information (Solaris/x86), and a replacement
Packit Service c5cf8c
    is available as the Architecture string info in the Machine object.
Packit Service c5cf8c
  + Add missing Backend string info on Solaris in most cases.
Packit Service c5cf8c
  + Document object attributes and string infos in a new Attributes
Packit Service c5cf8c
    section in the documentation.
Packit Service c5cf8c
  + Add a section about Synthetic topologies in the documentation.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.5.2 (some of these changes are in v1.6.2 but not in v1.6)
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Use libpciaccess instead of pciutils/libpci by default for I/O discovery.
Packit Service c5cf8c
  pciutils/libpci is only used if --enable-libpci is given to configure
Packit Service c5cf8c
  because its GPL license may taint hwloc. See the Installation section
Packit Service c5cf8c
  in the documentation for details.
Packit Service c5cf8c
* Fix get_cpubind on Solaris when bound to a single PU with
Packit Service c5cf8c
  processor_bind(). Thanks to Eugene Loh for reporting the problem
Packit Service c5cf8c
  and providing a patch.
Packit Service c5cf8c
* Fix some DIR descriptor leaks on Linux.
Packit Service c5cf8c
* Fix I/O device lists when some were filtered out after a XML import.
Packit Service c5cf8c
* Add missing Backend string info on Solaris in most cases.
Packit Service c5cf8c
* Fix the removal of I/O objects when importing a I/O-enabled XML topology
Packit Service c5cf8c
  without any I/O topology flag.
Packit Service c5cf8c
* Fix the output of hwloc-calc -H --hierarchical when using logical
Packit Service c5cf8c
  indexes in the output.
Packit Service c5cf8c
* Fix the pkg-config output with --libs --static.
Packit Service c5cf8c
  Thanks to Erik Schnetter for reporting one of the problems.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.5.1
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Fix block OS device detection on Linux kernel 3.3 and later.
Packit Service c5cf8c
  Thanks to Guy Streeter for reporting the problem and testing the fix.
Packit Service c5cf8c
* Fix the cpuid code in the x86 backend (for FreeBSD). Thanks to
Packit Service c5cf8c
  Sebastian Kuzminsky for reporting problems and testing patches.
Packit Service c5cf8c
* Fix 64bit detection on FreeBSD.
Packit Service c5cf8c
* Fix some corner cases in the management of the thissystem flag with
Packit Service c5cf8c
  respect to topology flags and environment variables.
Packit Service c5cf8c
* Fix some corner cases in command-line parsing checks in hwloc-distrib
Packit Service c5cf8c
  and hwloc-distances.
Packit Service c5cf8c
* Make sure we do not miss some block OS devices on old Linux kernels
Packit Service c5cf8c
  when a single PCI device has multiple IDE hosts/devices behind it.
Packit Service c5cf8c
* Do not disable I/O devices or instruction caches in hwloc-assembler output.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.5.0
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Backends
Packit Service c5cf8c
  + Do not limit the number of processors to 1024 on Solaris anymore.
Packit Service c5cf8c
  + Gather total machine memory on FreeBSD. Thanks to Cyril Roelandt.
Packit Service c5cf8c
  + XML topology files do not depend on the locale anymore. Float numbers
Packit Service c5cf8c
    such as NUMA distances or PCI link speeds now always use a dot as a
Packit Service c5cf8c
    decimal separator.
Packit Service c5cf8c
  + Add instruction caches detection on Linux, AIX, Windows and Darwin.
Packit Service c5cf8c
  + Add get_last_cpu_location() support for the current thread on AIX.
Packit Service c5cf8c
  + Support binding on AIX when threads or processes were bound with
Packit Service c5cf8c
    bindprocessor(). Thanks to Hendryk Bockelmann for reporting the issue
Packit Service c5cf8c
    and testing patches, and to Farid Parpia for explaining the binding
Packit Service c5cf8c
    interfaces.
Packit Service c5cf8c
  + Improve AMD topology detection in the x86 backend (for FreeBSD) using
Packit Service c5cf8c
    the topoext feature.
Packit Service c5cf8c
* API
Packit Service c5cf8c
  + Increase HWLOC_API_VERSION to 0x00010500 so that API changes may be
Packit Service c5cf8c
    detected at build-time.
Packit Service c5cf8c
  + Add a cache type attribute describind Data, Instruction and Unified
Packit Service c5cf8c
    caches. Caches with different types but same depth (for instance L1d
Packit Service c5cf8c
    and L1i) are placed on different levels.
Packit Service c5cf8c
  + Add hwloc_get_cache_type_depth() to retrieve the hwloc level depth of
Packit Service c5cf8c
    of the given cache depth and type, for instance L1i or L2.
Packit Service c5cf8c
    It helps  disambiguating the case where hwloc_get_type_depth() returns
Packit Service c5cf8c
    HWLOC_TYPE_DEPTH_MULTIPLE.
Packit Service c5cf8c
  + Instruction caches are ignored unless HWLOC_TOPOLOGY_FLAG_ICACHES is
Packit Service c5cf8c
    passed to hwloc_topology_set_flags() before load.
Packit Service c5cf8c
  + Add hwloc_ibv_get_device_osdev_by_name() OpenFabrics helper in
Packit Service c5cf8c
    openfabrics-verbs.h to find the hwloc OS device object corresponding to
Packit Service c5cf8c
    an OpenFabrics device.
Packit Service c5cf8c
* Tools
Packit Service c5cf8c
  + Add lstopo-no-graphics, a lstopo built without graphical support to
Packit Service c5cf8c
    avoid dependencies on external libraries such as Cairo and X11. When
Packit Service c5cf8c
    supported, graphical outputs are only available in the original lstopo
Packit Service c5cf8c
    program.
Packit Service c5cf8c
    - Packagers splitting lstopo and lstopo-no-graphics into different
Packit Service c5cf8c
      packages are advised to use the alternatives system so that lstopo
Packit Service c5cf8c
      points to the best available binary.
Packit Service c5cf8c
  + Instruction caches are enabled in lstopo by default. Use --no-icaches
Packit Service c5cf8c
    to disable them.
Packit Service c5cf8c
  + Add -t/--threads to show threads in hwloc-ps.
Packit Service c5cf8c
* Removal of obsolete components
Packit Service c5cf8c
  + Remove the old cpuset interface (hwloc/cpuset.h) which is deprecated and
Packit Service c5cf8c
    superseded by the bitmap API (hwloc/bitmap.h) since v1.1.
Packit Service c5cf8c
    hwloc_cpuset and nodeset types are still defined, but all hwloc_cpuset_*
Packit Service c5cf8c
    compatibility wrappers are now gone.
Packit Service c5cf8c
  + Remove Linux libnuma conversion helpers for the deprecated and
Packit Service c5cf8c
    broken nodemask_t interface.
Packit Service c5cf8c
  + Remove support for "Proc" type name, it was superseded by "PU" in v1.0.
Packit Service c5cf8c
  + Remove hwloc-mask symlinks, it was replaced by hwloc-calc in v1.0.
Packit Service c5cf8c
* Misc
Packit Service c5cf8c
  + Fix PCIe 3.0 link speed computation.
Packit Service c5cf8c
  + Non-printable characters are dropped from strings during XML export.
Packit Service c5cf8c
  + Fix importing of escaped characters with the minimalistic XML backend.
Packit Service c5cf8c
  + Assert hwloc_is_thissystem() in several I/O related helpers.
Packit Service c5cf8c
  + Fix some memory leaks in the x86 backend for FreeBSD.
Packit Service c5cf8c
  + Minor fixes to ease native builds on Windows.
Packit Service c5cf8c
  + Limit the number of retries when operating on all threads within a
Packit Service c5cf8c
    process on Linux if the list of threads is heavily getting modified.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.4.3
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* This release is only meant to fix the pciutils license issue when upgrading
Packit Service c5cf8c
  to hwloc v1.5 or later is not possible. It contains several other minor
Packit Service c5cf8c
  fixes but ignores many of them that are only in v1.5 or later.
Packit Service c5cf8c
* Use libpciaccess instead of pciutils/libpci by default for I/O discovery.
Packit Service c5cf8c
  pciutils/libpci is only used if --enable-libpci is given to configure
Packit Service c5cf8c
  because its GPL license may taint hwloc. See the Installation section
Packit Service c5cf8c
  in the documentation for details.
Packit Service c5cf8c
* Fix PCIe 3.0 link speed computation.
Packit Service c5cf8c
* Fix importing of escaped characters with the minimalistic XML backend.
Packit Service c5cf8c
* Fix a memory leak in the x86 backend.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.4.2
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Fix build on Solaris 9 and earlier when fabsf() is not a compiler
Packit Service c5cf8c
  built-in. Thanks to Igor Galić for reporting the problem.
Packit Service c5cf8c
* Fix support for more than 32 processors on Windows. Thanks to Hartmut
Packit Service c5cf8c
  Kaiser for reporting the problem.
Packit Service c5cf8c
* Fix process-wide binding and cpulocation routines on Linux when some
Packit Service c5cf8c
  threads disappear in the meantime. Thanks to Vlad Roubtsov for reporting
Packit Service c5cf8c
  the issue.
Packit Service c5cf8c
* Make installed scripts executable. Thanks to Jirka Hladky for reporting
Packit Service c5cf8c
  the problem.
Packit Service c5cf8c
* Fix libtool revision management when building for Windows. This fix was
Packit Service c5cf8c
  also released as hwloc v1.4.1.1 Windows builds. Thanks to Hartmut Kaiser
Packit Service c5cf8c
  for reporting the problem.
Packit Service c5cf8c
* Fix the __hwloc_inline keyword in public headers when compiling with a
Packit Service c5cf8c
  C++ compiler.
Packit Service c5cf8c
* Add Port info attribute to network OS devices inside OpenFabrics PCI
Packit Service c5cf8c
  devices so as to identify which interface corresponds to which port.
Packit Service c5cf8c
* Document requirements for interoperability helpers: I/O devices discovery
Packit Service c5cf8c
  is required for some of them; the topology must match the current host
Packit Service c5cf8c
  for most of them.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.4.1
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* This release contains all changes from v1.3.2.
Packit Service c5cf8c
* Fix hwloc_alloc_membind, thanks Karl Napf for reporting the issue.
Packit Service c5cf8c
* Fix memory leaks in some get_membind() functions.
Packit Service c5cf8c
* Fix helpers converting from Linux libnuma to hwloc (hwloc/linux-libnuma.h)
Packit Service c5cf8c
  in case of out-of-order NUMA node ids.
Packit Service c5cf8c
* Fix some overzealous assertions in the distance grouping code.
Packit Service c5cf8c
* Workaround BIOS reporting empty I/O locality in CUDA and OpenFabrics
Packit Service c5cf8c
  helpers on Linux. Thanks to Albert Solernou for reporting the problem.
Packit Service c5cf8c
* Install a valgrind suppressions file hwloc-valgrind.supp (see the FAQ).
Packit Service c5cf8c
* Fix memory binding documentation. Thanks to Karl Napf for reporting the
Packit Service c5cf8c
  issues.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.4.0 (does not contain all v1.3.2 changes)
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Major features
Packit Service c5cf8c
  + Add "custom" interface and "assembler" tools to build multi-node
Packit Service c5cf8c
    topology. See the Multi-node Topologies section in the documentation
Packit Service c5cf8c
    for details.
Packit Service c5cf8c
* Interface improvements
Packit Service c5cf8c
  + Add symmetric_subtree object attribute to ease assumptions when consulting
Packit Service c5cf8c
    regular symmetric topologies.
Packit Service c5cf8c
  + Add a CPUModel and CPUType info attribute to Socket objects on Linux
Packit Service c5cf8c
    and Solaris.
Packit Service c5cf8c
  + Add hwloc_get_obj_index_inside_cpuset() to retrieve the "logical" index
Packit Service c5cf8c
    of an object within a subtree of the topology.
Packit Service c5cf8c
  + Add more NVIDIA CUDA helpers in cuda.h and cudart.h to find hwloc objects
Packit Service c5cf8c
    corresponding to CUDA devices.
Packit Service c5cf8c
* Discovery improvements
Packit Service c5cf8c
  + Add a group object above partial distance matrices to make sure
Packit Service c5cf8c
    the matrices are available in the final topology, except when this
Packit Service c5cf8c
    new object would contradict the existing hierarchy.
Packit Service c5cf8c
  + Grouping by distances now also works when loading from XML.
Packit Service c5cf8c
  + Fix some corner cases in object insertion, for instance when dealing
Packit Service c5cf8c
    with NUMA nodes without any CPU.
Packit Service c5cf8c
* Backends
Packit Service c5cf8c
  + Implement hwloc_get_area_membind() on Linux.
Packit Service c5cf8c
  + Honor I/O topology flags when importing from XML.
Packit Service c5cf8c
  + Further improve XML-related error checking and reporting.
Packit Service c5cf8c
  + Hide synthetic topology error messages unless HWLOC_SYNTHETIC_VERBOSE=1.
Packit Service c5cf8c
* Tools
Packit Service c5cf8c
  + Add synthetic exporting of symmetric topologies to lstopo.
Packit Service c5cf8c
  + lstopo --horiz and --vert can now be applied to some specific object types.
Packit Service c5cf8c
  + lstopo -v -p now displays distance matrices with physical indexes.
Packit Service c5cf8c
  + Add hwloc-distances utility to list distances.
Packit Service c5cf8c
* Documentation
Packit Service c5cf8c
  + Fix and/or document the behavior of most inline functions in hwloc/helper.h
Packit Service c5cf8c
    when the topology contains some I/O or Misc objects.
Packit Service c5cf8c
  + Backend documentation enhancements.
Packit Service c5cf8c
* Bug fixes
Packit Service c5cf8c
  + Fix missing last bit in hwloc_linux_get_thread_cpubind().
Packit Service c5cf8c
    Thanks to Carolina Gómez-Tostón Gutiérrez for reporting the issue.
Packit Service c5cf8c
  + Fix FreeBSD build without cpuid support.
Packit Service c5cf8c
  + Fix several Windows build issues.
Packit Service c5cf8c
  + Fix inline keyword definition in public headers.
Packit Service c5cf8c
  + Fix dependencies in the embedded library.
Packit Service c5cf8c
  + Improve visibility support detection. Thanks to Dave Love for providing
Packit Service c5cf8c
    the patch.
Packit Service c5cf8c
  + Remove references to internal symbols in the tools.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.3.3
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* This release is only meant to fix the pciutils license issue when upgrading
Packit Service c5cf8c
  to hwloc v1.4 or later is not possible. It contains several other minor
Packit Service c5cf8c
  fixes but ignores many of them that are only in v1.4 or later.
Packit Service c5cf8c
* Use libpciaccess instead of pciutils/libpci by default for I/O discovery.
Packit Service c5cf8c
  pciutils/libpci is only used if --enable-libpci is given to configure
Packit Service c5cf8c
  because its GPL license may taint hwloc. See the Installation section
Packit Service c5cf8c
  in the documentation for details.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.3.2
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Fix missing last bit in hwloc_linux_get_thread_cpubind().
Packit Service c5cf8c
  Thanks to Carolina Gómez-Tostón Gutiérrez for reporting the issue.
Packit Service c5cf8c
* Fix build with -mcmodel=medium. Thanks to Devendar Bureddy for reporting
Packit Service c5cf8c
  the issue.
Packit Service c5cf8c
* Fix build with Solaris Studio 12 compiler when XML is disabled.
Packit Service c5cf8c
  Thanks to Paul H. Hargrove for reporting the problem.
Packit Service c5cf8c
* Fix installation with old GNU sed, for instance on Red Hat 8.
Packit Service c5cf8c
  Thanks to Paul H. Hargrove for reporting the problem.
Packit Service c5cf8c
* Fix PCI locality when Linux cgroups restrict the available CPUs.
Packit Service c5cf8c
* Fix floating point issue when grouping by distance on mips64 architecture.
Packit Service c5cf8c
  Thanks to Paul H. Hargrove for reporting the problem.
Packit Service c5cf8c
* Fix conversion from/to Linux libnuma when some NUMA nodes have no memory.
Packit Service c5cf8c
* Fix support for gccfss compilers with broken ffs() support. Thanks to
Packit Service c5cf8c
  Paul H. Hargrove for reporting the problem and providing a patch.
Packit Service c5cf8c
* Fix FreeBSD build without cpuid support.
Packit Service c5cf8c
* Fix several Windows build issues.
Packit Service c5cf8c
* Fix inline keyword definition in public headers.
Packit Service c5cf8c
* Fix dependencies in the embedded library.
Packit Service c5cf8c
* Detect when a compiler such as xlc may not report compile errors
Packit Service c5cf8c
  properly, causing some configure checks to be wrong. Thanks to
Packit Service c5cf8c
  Paul H. Hargrove for reporting the problem and providing a patch.
Packit Service c5cf8c
* Improve visibility support detection. Thanks to Dave Love for providing
Packit Service c5cf8c
  the patch.
Packit Service c5cf8c
* Remove references to internal symbols in the tools.
Packit Service c5cf8c
* Fix installation on systems with limited command-line size.
Packit Service c5cf8c
  Thanks to Paul H. Hargrove for reporting the problem.
Packit Service c5cf8c
* Further improve XML-related error checking and reporting.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.3.1
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Fix pciutils detection with pkg-config when not installed in standard
Packit Service c5cf8c
  directories.
Packit Service c5cf8c
* Fix visibility options detection with the Solaris Studio compiler.
Packit Service c5cf8c
  Thanks to Igor Galić and Terry Dontje for reporting the problems.
Packit Service c5cf8c
* Fix support for old Linux sched.h headers such as those found
Packit Service c5cf8c
  on Red Hat 8. Thanks to Paul H. Hargrove for reporting the problems.
Packit Service c5cf8c
* Fix inline and attribute support for Solaris compilers. Thanks to
Packit Service c5cf8c
  Dave Love for reporting the problems.
Packit Service c5cf8c
* Print a short summary at the end of the configure output. Thanks to
Packit Service c5cf8c
  Stefan Eilemann for the suggestion.
Packit Service c5cf8c
* Add --disable-libnuma configure option to disable libnuma-based
Packit Service c5cf8c
  memory binding support on Linux.  Thanks to Rayson Ho for the
Packit Service c5cf8c
  suggestion.
Packit Service c5cf8c
* Make hwloc's configure script properly obey $PKG_CONFIG.  Thanks to
Packit Service c5cf8c
  Nathan Phillip Brink for raising the issue.
Packit Service c5cf8c
* Silence some harmless pciutils warnings, thanks to Paul H. Hargrove
Packit Service c5cf8c
  for reporting the problem.
Packit Service c5cf8c
* Fix the documentation with respect to hwloc_pid_t and hwloc_thread_t
Packit Service c5cf8c
  being either pid_t and pthread_t on Unix, or HANDLE on Windows.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.3.0
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Major features
Packit Service c5cf8c
  + Add I/O devices and bridges to the topology using the pciutils
Packit Service c5cf8c
    library. Only enabled after setting the relevant flag with
Packit Service c5cf8c
    hwloc_topology_set_flags() before hwloc_topology_load(). See the
Packit Service c5cf8c
    I/O Devices section in the documentation for details.
Packit Service c5cf8c
* Discovery improvements
Packit Service c5cf8c
  + Add associativity to the cache attributes.
Packit Service c5cf8c
  + Add support for s390/z11 "books" on Linux.
Packit Service c5cf8c
  + Add the HWLOC_GROUPING_ACCURACY environment variable to relax
Packit Service c5cf8c
    distance-based grouping constraints. See the Environment Variables
Packit Service c5cf8c
    section in the documentation for details about grouping behavior
Packit Service c5cf8c
    and configuration.
Packit Service c5cf8c
  + Allow user-given distance matrices to remove or replace those
Packit Service c5cf8c
    discovered by the OS backend.
Packit Service c5cf8c
* XML improvements
Packit Service c5cf8c
  + XML is now always supported: a minimalistic custom import/export
Packit Service c5cf8c
    code is used when libxml2 is not available. It is only guaranteed
Packit Service c5cf8c
    to read XML files generated by hwloc.
Packit Service c5cf8c
  + hwloc_topology_export_xml() and export_xmlbuffer() now return an
Packit Service c5cf8c
    integer.
Packit Service c5cf8c
  + Add hwloc_free_xmlbuffer() to free the buffer allocated by
Packit Service c5cf8c
    hwloc_topology_export_xmlbuffer().
Packit Service c5cf8c
  + Hide XML topology error messages unless HWLOC_XML_VERBOSE=1.
Packit Service c5cf8c
* Minor API updates
Packit Service c5cf8c
  + Add hwloc_obj_add_info to customize object info attributes.
Packit Service c5cf8c
* Tools
Packit Service c5cf8c
  + lstopo now displays I/O devices by default. Several options are
Packit Service c5cf8c
    added to configure the I/O discovery.
Packit Service c5cf8c
  + hwloc-calc and hwloc-bind now accept I/O devices as input.
Packit Service c5cf8c
  + Add --restrict option to hwloc-calc and hwloc-distribute.
Packit Service c5cf8c
  + Add --sep option to change the output field separator in hwloc-calc.
Packit Service c5cf8c
  + Add --whole-system option to hwloc-ps.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.2.2
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Fix build on AIX 5.2, thanks Utpal Kumar Ray for the report.
Packit Service c5cf8c
* Fix XML import of very large page sizes or counts on 32bits platform,
Packit Service c5cf8c
  thanks to Karsten Hopp for the RedHat ticket.
Packit Service c5cf8c
* Fix crash when administrator limitations such as Linux cgroup require
Packit Service c5cf8c
  to restrict distance matrices. Thanks to Ake Sandgren for reporting the
Packit Service c5cf8c
  problem.
Packit Service c5cf8c
* Fix the removal of objects such as AMD Magny-Cours dual-node sockets
Packit Service c5cf8c
  in case of administrator restrictions.
Packit Service c5cf8c
* Improve error reporting and messages in case of wrong synthetic topology
Packit Service c5cf8c
  description.
Packit Service c5cf8c
* Several other minor internal fixes and documentation improvements.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.2.1
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Improve support of AMD Bulldozer "Compute-Unit" modules by detecting
Packit Service c5cf8c
  logical processors with different core IDs on Linux.
Packit Service c5cf8c
* Fix hwloc-ps crash when listing processes from another Linux cpuset.
Packit Service c5cf8c
  Thanks to Carl Smith for reporting the problem.
Packit Service c5cf8c
* Fix build on AIX and Solaris. Thanks to Carl Smith and Andreas Kupries
Packit Service c5cf8c
  for reporting the problems.
Packit Service c5cf8c
* Fix cache size detection on Darwin. Thanks to Erkcan Özcan for reporting
Packit Service c5cf8c
  the problem.
Packit Service c5cf8c
* Make configure fail if --enable-xml or --enable-cairo is given and
Packit Service c5cf8c
  proper support cannot be found. Thanks to Andreas Kupries for reporting
Packit Service c5cf8c
  the XML problem.
Packit Service c5cf8c
* Fix spurious L1 cache detection on AIX. Thanks to Hendryk Bockelmann
Packit Service c5cf8c
  for reporting the problem.
Packit Service c5cf8c
* Fix hwloc_get_last_cpu_location(THREAD) on Linux. Thanks to Gabriele
Packit Service c5cf8c
  Fatigati for reporting the problem.
Packit Service c5cf8c
* Fix object distance detection on Solaris.
Packit Service c5cf8c
* Add pthread_self weak symbol to ease static linking.
Packit Service c5cf8c
* Minor documentation fixes.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.2.0
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Major features
Packit Service c5cf8c
  + Expose latency matrices in the API as an array of distance structures
Packit Service c5cf8c
    within objects. Add several helpers to find distances.
Packit Service c5cf8c
  + Add hwloc_topology_set_distance_matrix() and environment variables
Packit Service c5cf8c
    to provide a matrix of distances between a given set of objects.
Packit Service c5cf8c
  + Add hwloc_get_last_cpu_location() and hwloc_get_proc_last_cpu_location()
Packit Service c5cf8c
    to retrieve the processors where a process or thread recently ran.
Packit Service c5cf8c
    - Add the corresponding --get-last-cpu-location option to hwloc-bind.
Packit Service c5cf8c
  + Add hwloc_topology_restrict() to restrict an existing topology to a
Packit Service c5cf8c
    given cpuset.
Packit Service c5cf8c
    - Add the corresponding --restrict option to lstopo.
Packit Service c5cf8c
* Minor API updates
Packit Service c5cf8c
  + Add hwloc_bitmap_list_sscanf/snprintf/asprintf to convert between bitmaps
Packit Service c5cf8c
    and strings such as 4-5,7-9,12,15-
Packit Service c5cf8c
  + hwloc_bitmap_set/clr_range() now support infinite ranges.
Packit Service c5cf8c
  + Clarify the difference between inserting Misc objects by cpuset or by
Packit Service c5cf8c
    parent.
Packit Service c5cf8c
  + hwloc_insert_misc_object_by_cpuset() now returns NULL in case of error.
Packit Service c5cf8c
* Discovery improvements
Packit Service c5cf8c
  + x86 backend (for freebsd): add x2APIC support
Packit Service c5cf8c
  + Support standard device-tree phandle, to get better support on e.g. ARM
Packit Service c5cf8c
    systems providing it.
Packit Service c5cf8c
  + Detect cache size on AIX. Thanks Christopher and IBM.
Packit Service c5cf8c
  + Improve grouping to support asymmetric topologies.
Packit Service c5cf8c
* Tools
Packit Service c5cf8c
  + Command-line tools now support "all" and "root" special locations
Packit Service c5cf8c
    consisting in the entire topology, as well as type names with depth
Packit Service c5cf8c
    attributes such as L2 or Group4.
Packit Service c5cf8c
  + hwloc-calc improvements:
Packit Service c5cf8c
    - Add --number-of/-N option to report the number of objects of a given
Packit Service c5cf8c
      type or depth.
Packit Service c5cf8c
    - -I is now equivalent to --intersect for listing the indexes of
Packit Service c5cf8c
      objects of a given type or depth that intersects the input.
Packit Service c5cf8c
    - Add -H to report the output as a hierarchical combination of types
Packit Service c5cf8c
      and depths.
Packit Service c5cf8c
  + Add --thissystem to lstopo.
Packit Service c5cf8c
  + Add lstopo-win, a console-less lstopo variant on Windows.
Packit Service c5cf8c
* Miscellaneous
Packit Service c5cf8c
  + Remove C99 usage from code base.
Packit Service c5cf8c
  + Rename hwloc-gather-topology.sh into hwloc-gather-topology
Packit Service c5cf8c
  + Fix AMD cache discovery on freebsd when there is no L3 cache, thanks
Packit Service c5cf8c
    Andriy Gapon for the fix.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.1.2
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Fix a segfault in the distance-based grouping code when some objects
Packit Service c5cf8c
  are not placed in any group. Thanks to Bernd Kallies for reporting
Packit Service c5cf8c
  the problem and providing a patch.
Packit Service c5cf8c
* Fix the command-line parsing of hwloc-bind --mempolicy interleave.
Packit Service c5cf8c
  Thanks to Guy Streeter for reporting the problem.
Packit Service c5cf8c
* Stop truncating the output in hwloc_obj_attr_snprintf() and in the
Packit Service c5cf8c
  corresponding lstopo output. Thanks to Guy Streeter for reporting the
Packit Service c5cf8c
  problem.
Packit Service c5cf8c
* Fix object levels ordering in synthetic topologies.
Packit Service c5cf8c
* Fix potential incoherency between device tree and kernel information,
Packit Service c5cf8c
  when SMT is disabled on Power machines.
Packit Service c5cf8c
* Fix and document the behavior of hwloc_topology_set_synthetic() in case
Packit Service c5cf8c
  of invalid argument. Thanks to Guy Streeter for reporting the problem.
Packit Service c5cf8c
* Add some verbose error message reporting when it looks like the OS
Packit Service c5cf8c
  gives erroneous information.
Packit Service c5cf8c
* Do not include unistd.h and stdint.h in public headers on Windows.
Packit Service c5cf8c
* Move config.h files into their own subdirectories to avoid name
Packit Service c5cf8c
  conflicts when AC_CONFIG_HEADERS adds -I's for them.
Packit Service c5cf8c
* Remove the use of declaring variables inside "for" loops.
Packit Service c5cf8c
* Some other minor fixes.
Packit Service c5cf8c
* Many minor documentation fixes.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.1.1
Packit Service c5cf8c
-------------
Packit Service c5cf8c
* Add hwloc_get_api_version() which returns the version of hwloc used
Packit Service c5cf8c
  at runtime. Thanks to Guy Streeter for the suggestion.
Packit Service c5cf8c
* Fix the number of hugepages reported for NUMA nodes on Linux.
Packit Service c5cf8c
* Fix hwloc_bitmap_to_ulong() right after allocating the bitmap.
Packit Service c5cf8c
  Thanks to Bernd Kallies for reporting the problem.
Packit Service c5cf8c
* Fix hwloc_bitmap_from_ith_ulong() to properly zero the first ulong.
Packit Service c5cf8c
  Thanks to Guy Streeter for reporting the problem.
Packit Service c5cf8c
* Fix hwloc_get_membind_nodeset() on Linux.
Packit Service c5cf8c
  Thanks to Bernd Kallies for reporting the problem and providing a patch.
Packit Service c5cf8c
* Fix some file descriptor leaks in the Linux discovery.
Packit Service c5cf8c
* Fix the minimum width of NUMA nodes, caches and the legend in the graphical
Packit Service c5cf8c
  lstopo output. Thanks to Jirka Hladky for reporting the problem.
Packit Service c5cf8c
* Various fixes to bitmap conversion from/to taskset-strings.
Packit Service c5cf8c
* Fix and document snprintf functions behavior when the buffer size is too
Packit Service c5cf8c
  small or zero. Thanks to Guy Streeter for reporting the problem.
Packit Service c5cf8c
* Fix configure to avoid spurious enabling of the cpuid backend.
Packit Service c5cf8c
  Thanks to Tim Anderson for reporting the problem.
Packit Service c5cf8c
* Cleanup error management in hwloc-gather-topology.sh.
Packit Service c5cf8c
  Thanks to Jirka Hladky for reporting the problem and providing a patch.
Packit Service c5cf8c
* Add a manpage and usage for hwloc-gather-topology.sh on Linux.
Packit Service c5cf8c
  Thanks to Jirka Hladky for providing a patch.
Packit Service c5cf8c
* Memory binding documentation enhancements.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.1.0
Packit Service c5cf8c
-------------
Packit Service c5cf8c
Packit Service c5cf8c
* API
Packit Service c5cf8c
  + Increase HWLOC_API_VERSION to 0x00010100 so that API changes may be
Packit Service c5cf8c
    detected at build-time.
Packit Service c5cf8c
  + Add a memory binding interface.
Packit Service c5cf8c
  + The cpuset API (hwloc/cpuset.h) is now deprecated. It is replaced by
Packit Service c5cf8c
    the bitmap API (hwloc/bitmap.h) which offers the same features with more
Packit Service c5cf8c
    generic names since it applies to CPU sets, node sets and more.
Packit Service c5cf8c
    Backward compatibility with the cpuset API and ABI is still provided but
Packit Service c5cf8c
    it will be removed in a future release.
Packit Service c5cf8c
    Old types (hwloc_cpuset_t, ...) are still available as a way to clarify
Packit Service c5cf8c
    what kind of hwloc_bitmap_t each API function manipulates.
Packit Service c5cf8c
    Upgrading to the new API only requires to replace hwloc_cpuset_ function
Packit Service c5cf8c
    calls with the corresponding hwloc_bitmap_ calls, with the following
Packit Service c5cf8c
    renaming exceptions:
Packit Service c5cf8c
    - hwloc_cpuset_cpu -> hwloc_bitmap_only
Packit Service c5cf8c
    - hwloc_cpuset_all_but_cpu -> hwloc_bitmap_allbut
Packit Service c5cf8c
    - hwloc_cpuset_from_string -> hwloc_bitmap_sscanf
Packit Service c5cf8c
  + Add an `infos' array in each object to store couples of info names and
Packit Service c5cf8c
    values. It enables generic storage of things like the old dmi board infos
Packit Service c5cf8c
    that were previously stored in machine specific attributes.
Packit Service c5cf8c
  + Add linesize cache attribute.
Packit Service c5cf8c
* Features
Packit Service c5cf8c
  + Bitmaps (and thus CPU sets and node sets) are dynamically (re-)allocated,
Packit Service c5cf8c
    the maximal number of CPUs (HWLOC_NBMAXCPUS) has been removed.
Packit Service c5cf8c
  + Improve the distance-based grouping code to better support irregular
Packit Service c5cf8c
    distance matrices.
Packit Service c5cf8c
  + Add support for device-tree to get cache information (useful on Power
Packit Service c5cf8c
    architectures).
Packit Service c5cf8c
* Helpers
Packit Service c5cf8c
  + Add NVIDIA CUDA helpers in cuda.h and cudart.h to ease interoperability
Packit Service c5cf8c
    with CUDA Runtime and Driver APIs.
Packit Service c5cf8c
  + Add Myrinet Express helper in myriexpress.h to ease interoperability.
Packit Service c5cf8c
* Tools
Packit Service c5cf8c
  + lstopo now displays physical/OS indexes by default in graphical mode
Packit Service c5cf8c
    (use -l to switch back to logical indexes). The textual output still uses
Packit Service c5cf8c
    logical by default (use -p to switch to physical indexes).
Packit Service c5cf8c
  + lstopo prefixes logical indexes with `L#' and physical indexes with `P#'.
Packit Service c5cf8c
    Physical indexes are also printed as `P#N' instead of `phys=N' within
Packit Service c5cf8c
    object attributes (in parentheses).
Packit Service c5cf8c
  + Add a legend at the bottom of the lstopo graphical output, use --no-legend
Packit Service c5cf8c
    to remove it.
Packit Service c5cf8c
  + Add hwloc-ps to list process' bindings.
Packit Service c5cf8c
  + Add --membind and --mempolicy options to hwloc-bind.
Packit Service c5cf8c
  + Improve tools command-line options by adding a generic --input option
Packit Service c5cf8c
    (and more) which replaces the old --xml, --synthetic and --fsys-root.
Packit Service c5cf8c
  + Cleanup lstopo output configuration by adding --output-format.
Packit Service c5cf8c
  + Add --intersect in hwloc-calc, and replace --objects with --largest.
Packit Service c5cf8c
  + Add the ability to work on standard input in hwloc-calc.
Packit Service c5cf8c
  + Add --from, --to and --at in hwloc-distrib.
Packit Service c5cf8c
  + Add taskset-specific functions and command-line tools options to
Packit Service c5cf8c
    manipulate CPU set strings in the format of the taskset program.
Packit Service c5cf8c
  + Install hwloc-gather-topology.sh on Linux.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.0.3
Packit Service c5cf8c
-------------
Packit Service c5cf8c
Packit Service c5cf8c
* Fix support for Linux cpuset when emulated by a cgroup mount point.
Packit Service c5cf8c
* Remove unneeded runtime dependency on libibverbs.so in the library and
Packit Service c5cf8c
  all utils programs.
Packit Service c5cf8c
* Fix hwloc_cpuset_to_linux_libnuma_ulongs in case of non-linear OS-indexes
Packit Service c5cf8c
  for NUMA nodes.
Packit Service c5cf8c
* lstopo now displays physical/OS indexes by default in graphical mode
Packit Service c5cf8c
  (use -l to switch back to logical indexes). The textual output still uses
Packit Service c5cf8c
  logical by default (use -p to switch to physical indexes).
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.0.2
Packit Service c5cf8c
-------------
Packit Service c5cf8c
Packit Service c5cf8c
* Public headers can now be included directly from C++ programs.
Packit Service c5cf8c
* Solaris fix for non-contiguous cpu numbers.  Thanks to Rolf vandeVaart for
Packit Service c5cf8c
  reporting the issue.
Packit Service c5cf8c
* Darwin 10.4 fix.  Thanks to Olivier Cessenat for reporting the issue.
Packit Service c5cf8c
* Revert 1.0.1 patch that ignored sockets with unknown ID values since it
Packit Service c5cf8c
  only slightly helped POWER7 machines with old Linux kernels while it
Packit Service c5cf8c
  prevents recent kernels from getting the complete POWER7 topology.
Packit Service c5cf8c
* Fix hwloc_get_common_ancestor_obj().
Packit Service c5cf8c
* Remove arch-specific bits in public headers.
Packit Service c5cf8c
* Some fixes in the lstopo graphical output.
Packit Service c5cf8c
* Various man page clarifications and minor updates.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.0.1
Packit Service c5cf8c
-------------
Packit Service c5cf8c
Packit Service c5cf8c
* Various Solaris fixes.  Thanks to Yannick Martin for reporting the issue.
Packit Service c5cf8c
* Fix "non-native" builds on x86 platforms (e.g., when building 32
Packit Service c5cf8c
  bit executables with compilers that natively build 64 bit).
Packit Service c5cf8c
* Ignore sockets with unknown ID values (which fixes issues on POWER7
Packit Service c5cf8c
  machines).  Thanks to Greg Bauer for reporting the issue.
Packit Service c5cf8c
* Various man page clarifications and minor updates.
Packit Service c5cf8c
* Fixed memory leaks in hwloc_setup_group_from_min_distance_clique().
Packit Service c5cf8c
* Fix cache type filtering on MS Windows 7.  Thanks to Αλέξανδρος
Packit Service c5cf8c
  Παπαδογιαννάκ for reporting the issue.
Packit Service c5cf8c
* Fixed warnings when compiling with -DNDEBUG.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 1.0.0
Packit Service c5cf8c
-------------
Packit Service c5cf8c
Packit Service c5cf8c
* The ABI of the library has changed.
Packit Service c5cf8c
* Backend updates
Packit Service c5cf8c
  + Add FreeBSD support.
Packit Service c5cf8c
  + Add x86 cpuid based backend.
Packit Service c5cf8c
  + Add Linux cgroup support to the Linux cpuset code.
Packit Service c5cf8c
  + Support binding of entire multithreaded process on Linux.
Packit Service c5cf8c
  + Fix and enable Group support in Windows.
Packit Service c5cf8c
  + Cleanup XML export/import.
Packit Service c5cf8c
* Objects
Packit Service c5cf8c
  + HWLOC_OBJ_PROC is renamed into HWLOC_OBJ_PU for "Processing Unit",
Packit Service c5cf8c
    its stringified type name is now "PU".
Packit Service c5cf8c
  + Use new HWLOC_OBJ_GROUP objects instead of MISC when grouping
Packit Service c5cf8c
    objects according to NUMA distances or arbitrary OS aggregation.
Packit Service c5cf8c
  + Rework memory attributes.
Packit Service c5cf8c
  + Add different cpusets in each object to specify processors that
Packit Service c5cf8c
    are offline, unavailable, ...
Packit Service c5cf8c
  + Cleanup the storage of object names and DMI infos.
Packit Service c5cf8c
* Features
Packit Service c5cf8c
  + Add support for looking up specific PID topology information.
Packit Service c5cf8c
  + Add hwloc_topology_export_xml() to export the topology in a XML file.
Packit Service c5cf8c
  + Add hwloc_topology_get_support() to retrieve the supported features
Packit Service c5cf8c
    for the current topology context.
Packit Service c5cf8c
  + Support non-SYSTEM object as the root of the tree, use MACHINE in
Packit Service c5cf8c
    most common cases.
Packit Service c5cf8c
  + Add hwloc_get_*cpubind() routines to retrieve the current binding
Packit Service c5cf8c
    of processes and threads.
Packit Service c5cf8c
* API
Packit Service c5cf8c
  + Add HWLOC_API_VERSION to help detect the currently used API version.
Packit Service c5cf8c
  + Add missing ending "e" to *compare* functions.
Packit Service c5cf8c
  + Add several routines to emulate PLPA functions.
Packit Service c5cf8c
  + Rename and rework the cpuset and/or/xor/not/clear operators to output
Packit Service c5cf8c
    their result in a dedicated argument instead of modifying one input.
Packit Service c5cf8c
  + Deprecate hwloc_obj_snprintf() in favor of hwloc_obj_type/attr_snprintf().
Packit Service c5cf8c
  + Clarify the use of parent and ancestor in the API, do not use father.
Packit Service c5cf8c
  + Replace hwloc_get_system_obj() with hwloc_get_root_obj().
Packit Service c5cf8c
  + Return -1 instead of HWLOC_OBJ_TYPE_MAX in the API since the latter
Packit Service c5cf8c
    isn't public.
Packit Service c5cf8c
  + Relax constraints in hwloc_obj_type_of_string().
Packit Service c5cf8c
  + Improve displaying of memory sizes.
Packit Service c5cf8c
  + Add 0x prefix to cpuset strings.
Packit Service c5cf8c
* Tools
Packit Service c5cf8c
  + lstopo now displays logical indexes by default, use --physical to
Packit Service c5cf8c
    revert back to OS/physical indexes.
Packit Service c5cf8c
  + Add colors in the lstopo graphical outputs to distinguish between online,
Packit Service c5cf8c
    offline, reserved, ... objects.
Packit Service c5cf8c
  + Extend lstopo to show cpusets, filter objects by type, ...
Packit Service c5cf8c
  + Renamed hwloc-mask into hwloc-calc which supports many new options.
Packit Service c5cf8c
* Documentation
Packit Service c5cf8c
  + Add a hwloc(7) manpage containing general information.
Packit Service c5cf8c
  + Add documentation about how to switch from PLPA to hwloc.
Packit Service c5cf8c
  + Cleanup the distributed documentation files.
Packit Service c5cf8c
* Miscellaneous
Packit Service c5cf8c
  + Many compilers warning fixes.
Packit Service c5cf8c
  + Cleanup the ABI by using the visibility attribute.
Packit Service c5cf8c
  + Add project embedding support.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 0.9.4 (unreleased)
Packit Service c5cf8c
--------------------------
Packit Service c5cf8c
Packit Service c5cf8c
* Fix reseting colors to normal in lstopo -.txt output.
Packit Service c5cf8c
* Fix Linux pthread_t binding error report.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 0.9.3
Packit Service c5cf8c
-------------
Packit Service c5cf8c
Packit Service c5cf8c
* Fix autogen.sh to work with Autoconf 2.63.
Packit Service c5cf8c
* Fix various crashes in particular conditions:
Packit Service c5cf8c
  - xml files with root attributes
Packit Service c5cf8c
  - offline CPUs
Packit Service c5cf8c
  - partial sysfs support
Packit Service c5cf8c
  - unparseable /proc/cpuinfo
Packit Service c5cf8c
  - ignoring NUMA level while Misc level have been generated
Packit Service c5cf8c
* Tweak documentation a bit
Packit Service c5cf8c
* Do not require the pthread library for binding the current thread on Linux
Packit Service c5cf8c
* Do not erroneously consider the sched_setaffinity prototype is the old version
Packit Service c5cf8c
  when there is actually none.
Packit Service c5cf8c
* Fix _syscall3 compilation on archs for which we do not have the
Packit Service c5cf8c
  sched_setaffinity system call number.
Packit Service c5cf8c
* Fix AIX binding.
Packit Service c5cf8c
* Fix libraries dependencies: now only lstopo depends on libtermcap, fix
Packit Service c5cf8c
  binutils-gold link
Packit Service c5cf8c
* Have make check always build and run hwloc-hello.c
Packit Service c5cf8c
* Do not limit size of a cpuset.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 0.9.2
Packit Service c5cf8c
-------------
Packit Service c5cf8c
Packit Service c5cf8c
* Trivial documentation changes.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 0.9.1
Packit Service c5cf8c
-------------
Packit Service c5cf8c
Packit Service c5cf8c
* Re-branded to "hwloc" and moved to the Open MPI project, relicensed under the
Packit Service c5cf8c
  BSD license.
Packit Service c5cf8c
* The prefix of all functions and tools is now hwloc, and some public
Packit Service c5cf8c
  functions were also renamed for real.
Packit Service c5cf8c
* Group NUMA nodes into Misc objects according to their physical distance
Packit Service c5cf8c
  that may be reported by the OS/BIOS.
Packit Service c5cf8c
  May be ignored by setting HWLOC_IGNORE_DISTANCES=1 in the environment.
Packit Service c5cf8c
* Ignore offline CPUs on Solaris.
Packit Service c5cf8c
* Improved binding support on AIX.
Packit Service c5cf8c
* Add HP-UX support.
Packit Service c5cf8c
* CPU sets are now allocated/freed dynamically.
Packit Service c5cf8c
* Add command line options to tune the lstopo graphical output, add
Packit Service c5cf8c
  semi-graphical textual output
Packit Service c5cf8c
* Extend topobind to support multiple cpusets or objects on the command
Packit Service c5cf8c
  line as topomask does.
Packit Service c5cf8c
* Add an Infiniband-specific helper hwloc/openfabrics-verbs.h to retrieve
Packit Service c5cf8c
  the physical location of IB devices.
Packit Service c5cf8c
Packit Service c5cf8c
Packit Service c5cf8c
Version 0.9 (libtopology)
Packit Service c5cf8c
-------------------------
Packit Service c5cf8c
Packit Service c5cf8c
* First release.