Brice Goglin, on lun. 29 janv. 2018 22:22:58 +0100, wrote:
> 2.0.0rc2 is out.

And is now uploaded to Debian experimental.

> Changes since rc1 include:
> * Mac OS X core and hyperthread discovery fixes
> * Memory binding improvements on Linux and Windows
> * Some clarification about the memory binding policies
> * Some minor configure/build fixes
> * Many documentation updates
> 
> I'd like to say we won't need a rc3, but we got several reports
> after rc1, hence I can't be sure it won't happen again :)
> 
> Note that the Upgrading page is being moved from the wiki
> to the official documentation (available from the Related Pages tab):
> https://www.open-mpi.org/projects/hwloc/doc/v2.0.0rc2/a00327.php
> 
> Brice
> 
> 
> 
> Le 16/01/2018 à 16:51, Brice Goglin a écrit :
> 
> > The Hardware Locality (hwloc) team is pleased to announce the first
> > release candidate for v2.0.0:
> >
> >    http://www.open-mpi.org/projects/hwloc/
> >
> > v2.0.0 is the result of more than 2 years of work.
> > There are lots of changes as listed below, including
> > * Better support for upcoming heterogeneous/hybrid/non-volatile
> >   memory technologies, which involves significant changes in the
> >   way NUMA nodes are attached to the tree and placed in a level.
> > * API changes to cleanup bad ideas from 8 years ago
> >
> > You are strongly encouraged to
> > ** try porting your code to this release candidate as soon as possible **
> > and report any issue about the new API.
> > We can still change the API until the final 2.0 is released.
> > But we cannot break it later!
> >
> > See https://github.com/open-mpi/hwloc/wiki/Upgrading-to-v2.0-API
> > for details about API changes.
> >
> > Version 2.0.0
> > -------------
> > *** The ABI of the library has changed. ***
> >   For instance some hwloc_obj fields were reordered, added or removed, see 
> > below.
> >   + HWLOC_API_VERSION and hwloc_get_api_version() now give 0x00020000.
> >   + See "How do I handle ABI breaks and API upgrades ?" in the FAQ
> >     and https://github.com/open-mpi/hwloc/wiki/Upgrading-to-v2.0-API
> > * Major API changes
> >   + Memory, I/O and Misc objects are now stored in dedicated children lists,
> >     not in the usual children list that is now only used for CPU-side 
> > objects.
> >     - hwloc_get_next_child() may still be used to iterate over these 4 lists
> >       of children at once.
> >     - hwloc_obj_type_is_normal(), _memory() and _io() may be used to check
> >       the kind of a given object type.
> >   + Topologies always have at least one NUMA object. On non-NUMA machines,
> >     a single NUMA object is added to describe the entire machine memory.
> >     The NUMA level cannot be ignored anymore.
> >   + The NUMA level is special since NUMA nodes are not in the main hierarchy
> >     of objects anymore. Its depth is a fake negative depth that should not 
> > be
> >     compared with normal levels.
> >     - If all memory objects are attached to parents at the same depth,
> >       it may be retrieved with hwloc_get_memory_parents_depth().
> >   + The HWLOC_OBJ_CACHE type is replaced with 8 types HWLOC_OBJ_L[1-5]CACHE
> >     and HWLOC_OBJ_L[1-3]ICACHE that remove the need to disambiguate levels
> >     when looking for caches with _by_type() functions.
> >     - New hwloc_obj_type_is_{,d,i}cache() functions may be used to check 
> > whether
> >       a given type is a cache.
> >   + Reworked ignoring/filtering API
> >     - Replace hwloc_topology_ignore*() functions with 
> > hwloc_topology_set_type_filter()
> >       and hwloc_topology_set_all_types_filter().
> >       . Contrary to hwloc_topology_ignore_{type,all}_keep_structure() which
> >         removed individual objects, HWLOC_TYPE_FILTER_KEEP_STRUCTURE only 
> > removes
> >         entire levels (so that topology do not become too asymmetric).
> >     - Remove HWLOC_TOPOLOGY_FLAG_ICACHES in favor of 
> > hwloc_topology_set_icache_types_filter()
> >       with HWLOC_TYPE_FILTER_KEEP_ALL.
> >     - Remove HWLOC_TOPOLOGY_FLAG_IO_DEVICES, _IO_BRIDGES and _WHOLE_IO in 
> > favor of
> >       hwloc_topology_set_io_types_filter() with HWLOC_TYPE_FILTER_KEEP_ALL 
> > or
> >       HWLOC_TYPE_FILTER_KEEP_IMPORTANT.
> >   + The distance API has been completely reworked. It is now described
> >     in hwloc/distances.h.
> >   + Return values
> >     - Most functions in hwloc/bitmap.h now return an int that may be 
> > negative
> >       in case of failure to realloc/extend the internal storage of a bitmap.
> >     - hwloc_obj_add_info() also returns an int in case allocations fail.
> > * Minor API changes
> >   + Object attributes
> >     - obj->memory is removed.
> >       . local_memory and page_types attributes are now in 
> > obj->attr->numanode
> >       . total_memory moves obj->total_memory.
> >     - Objects do not have allowed_cpuset and allowed_nodeset anymore.
> >       They are only available for the entire topology using
> >       hwloc_topology_get_allowed_cpuset() and 
> > hwloc_topology_get_allowed_nodeset().
> >     - Objects now have a "subtype" field that supersedes former "Type" and
> >       "CoProcType" info attributes.
> >   + Object and level depths are now signed ints.
> >   + Object string printing and parsing
> >     - hwloc_type_sscanf() deprecates the old hwloc_obj_type_sscanf().
> >     - hwloc_type_sscanf_as_depth() is added to convert a type name into
> >       a level depth.
> >     - hwloc_obj_cpuset_snprintf() is deprecated in favor of 
> > hwloc_bitmap_snprintf().
> >   + Misc objects
> >     - Replace hwloc_topology_insert_misc_object_by_cpuset() with
> >       hwloc_topology_insert_group_object() to precisely specify the location
> >       of an additional hierarchy level in the topology.
> >     - Misc objects have their own level and depth to iterate over all of 
> > them.
> >     - Misc objects may now only be inserted as a leaf object with
> >       hwloc_topology_insert_misc_object() which deprecates
> >       hwloc_topology_insert_misc_object_by_parent().
> >   + hwloc_topology_restrict() doesn't remove objects that contain memory
> >     by default anymore.
> >     - The list of existing restrict flags was modified.
> >   + The discovery support array now contains some NUMA specific bits.
> >   + XML export functions take an additional flags argument,
> >     for instance for exporting XMLs that are compatible with hwloc 1.x.
> >   + Functions diff_load_xml*(), diff_export_xml*() and diff_destroy() in
> >     hwloc/diff.h do not need a topology as first parameter anymore.
> >   + hwloc_parse_cpumap_file () superseded by 
> > hwloc_linux_read_path_as_cpumask()
> >     in hwloc/linux.h.
> > * New APIs and Features
> >   + Add hwloc/shmem.h for sharing topologies between processes running on
> >     the same machine (for reducing the memory footprint).
> >   + Add the experimental netloc subproject. It is disabled by default
> >     and can be enabled with --enable-netloc.
> >     It currently brings command-line tools to gather and visualize the
> >     topology of InfiniBand fabrics, and an API to convert such topologies
> >     into Scotch architectures for process mapping.
> >     See the documentation for details.
> > * Removed APIs and features
> >   + Remove the online_cpuset from struct hwloc_obj. Offline PUs get unknown
> >     topologies on Linux nowadays, and wrong topology on Solaris. Other OS
> >     do not support them. And one cannot do much about them anyway. Just keep
> >     them in complete_cpuset.
> >   + Remove the now-unused "System" object type HWLOC_OBJ_SYSTEM,
> >     defined to MACHINE for backward compatibility.
> >   + The almost-unused "os_level" attribute has been removed from the
> >     hwloc_obj structure.
> >   + Remove the custom interface for assembling the topologies of different
> >     nodes as well as the hwloc-assembler tools.
> >   + hwloc_topology_set_fsroot() is removed, the environment variable
> >     HWLOC_FSROOT may be used for the same remote testing/debugging purpose.
> >   + Remove the deprecated hwloc_obj_snprintf(), hwloc_obj_type_of_string(),
> >     hwloc_distribute[v]().
> >   * Remove Myrinet Express interoperability (hwloc/myriexpress.h).
> >   + Remove Kerrighed support from the Linux backend.
> >   + Remove Tru64 (OSF/1) support.
> >     - Remove HWLOC_MEMBIND_REPLICATE which wasn't available anywhere else.
> > * Tools
> >   + lstopo and hwloc-info have a new --filter option matching the new 
> > filtering API.
> >   + lstopo can be given --children-layout=plain to force a basic displaying
> >     of memory and normal children together below their parent.
> >   + hwloc-distances was removed and replaced with lstopo --distances.
> > * Misc
> >   + About Objects
> >     - Linux OS devices do not have to be attached through PCI anymore,
> >       for instance enabling the discovery of NVDIMM block devices.
> >     - Add a SectorSize attribute to block OS devices on Linux.
> >     - MemoryModule objects are not added by default because Misc objects are
> >       filtered-out by default.
> >     - Do not set PCI devices and bridges name automatically. Vendor and 
> > device
> >       names are already in info attributes.
> >   + Exports
> >     - Exporting to synthetic now ignores I/O and Misc objects.
> >   + PCI discovery
> >     - Separate OS device discovery from PCI discovery. Only the latter is 
> > disabled
> >       with --disable-pci at configure time. Both may be disabled with 
> > --disable-io.
> >     - The `linuxpci' component is now renamed into `linuxio'.
> >     - The old `libpci' component name from hwloc 1.6 is not supported 
> > anymore,
> >       only the `pci' name from hwloc 1.7 is now recognized.
> >     - The HWLOC_PCI_<domain>_<bus>_LOCALCPUS environment variables are 
> > superseded
> >       with a single HWLOC_PCI_LOCALITY where bus ranges may be specified.
> >   + Components and discovery
> >     - Add HWLOC_SYNTHETIC environment variable to enforce a synthetic 
> > topology
> >       as if hwloc_topology_set_synthetic() had been called.
> >     - HWLOC_COMPONENTS doesn't support xml or synthetic component attributes
> >       anymore, they should be passed in HWLOC_XMLFILE or HWLOC_SYNTHETIC 
> > instead.
> >     - HWLOC_COMPONENTS takes precedence over other environment variables
> >       for selecting components.
> >   + Remove the dependency on libnuma on Linux.
> >   + hwloc now requires a C99 compliant compiler.
> >
> > Changes since v2.0.0-beta1 include the addition of 
> > hwloc_get_memory_parents_depth(),
> > the addition of hwloc_obj_type_is_normal() and friends, some new support 
> > bits,
> > and the removal of Myrinet Express interoperability.
> >
> > Changes from v1.11.9rc1 are included in v2.0.0rc1.
> >
> > Te final v1.11.9 will be released in the next days and there will be other
> > ultra-stable v1.11.x releases even after the final v2.0.0.
> >
> > --
> > Brice
> >
> 
> _______________________________________________
> hwloc-announce mailing list
> hwloc-announce@lists.open-mpi.org
> https://lists.open-mpi.org/mailman/listinfo/hwloc-announce

-- 
Samuel
Fatal Error: Found [MS-Windows] System -> Repartitioning Disk for Linux...
(By cbbr...@io.org, Christopher Browne)
_______________________________________________
hwloc-announce mailing list
hwloc-announce@lists.open-mpi.org
https://lists.open-mpi.org/mailman/listinfo/hwloc-announce

Reply via email to