Skip to content

oneDPL 2022.2.0 release

Compare
Choose a tag to compare
@ValentinaKats ValentinaKats released this 25 Jul 17:57
· 421 commits to main since this release
c697fac

New Features

  • Added sort_by_key algorithm for key-value sorting.
  • Improved performance of the reduce, min_element, max_element, minmax_element,
    is_partitioned, and lexicographical_compare algorithms with DPC++ execution policies.
  • Improved performance of the reduce_by_segment, inclusive_scan_by_segment, and
    exclusive_scan_by_segment algorithms for binary operators with known identities
    when using DPC++ execution policies.
  • Added value_type to all views in oneapi::dpl::experimental::ranges.
  • Extended oneapi::dpl::experimental::ranges::sort to support projections applied to the range elements prior to comparison.

Fixed Issues

  • The minimally required CMake version is raised to 3.11 on Linux and 3.20 on Windows.
  • Added new CMake package oneDPLIntelLLVMConfig.cmake to resolve issues using CMake 3.20+ on Windows for icx and icx-cl.
  • Fixed an error in the sort and stable_sort algorithms when performing a descending sort
    on signed numeric types with negative values.
  • Fixed an error in reduce_by_segment algorithm when a non-commutative predicate is used.
  • Fixed an error in sort and stable_sort algorithms for integral types wider than 4 bytes.
  • Fixed an error for some compilers where OpenMP or SYCL backend was selected by CMake scripts without full compiler support.

New Known Issues and Limitations

  • Incorrect results may be produced with in-place scans using unseq and par_unseq policies on
    CPUs with the Intel® C++ Compiler 2021.8.

This release also includes the following changes from oneDPL 2022.1.1

New Features

  • Improved sort algorithm performance for the arithmetic data types with std::less or std::greater comparison operator and DPC++ policy.

Fixes Issues

  • Fixed an error that caused segmentation faults in transform_reduce, minmax_element, and related algorithms when ran on CPU devices.
  • Fixed a compilation error in transform_reduce, minmax_element, and related algorithms on FPGAs.
  • Fixed permutation_iterator to support C-style array as a permutation map.
  • Fixed a radix-sort issue with 64-bit signed integer types.