Skip to content

oneDPL 2022.4.0 release

Compare
Choose a tag to compare
@ValentinaKats ValentinaKats released this 05 Mar 13:33
8a48f19

New Features

  • Added experimental radix_sort and radix_sort_by_key algorithms residing in
    the oneapi::dpl::experimental::kt::esimd namespace. These algorithms are first
    in the family of kernel templates that allow configuring a variety of parameters
    including the number of elements to process by a work item, and the size of a workgroup.
    The algorithms only work with Intel® Data Center GPU Max Series.
  • Added new transform_if algorithm for applying a transform function conditionally
    based on a predicate, with overloads provided for one and two input sequences
    that use correspondingly unary and binary operations and predicates.
  • Optimizations used with Intel® oneAPI DPC++/C++ Compiler are expanded to the open source oneAPI DPC++ compiler.

New Known Issues and Limitations

  • esimd::radix_sort and esimd::radix_sort_by_key kernel templates fail to compile when a program
    is built with -g, -O0, -O1 compiler options.
  • esimd::radix_sort_by_key kernel template produces wrong results with the following combinations
    of kernel_param and types of keys and values:
    • sizeof(key_type) + sizeof(val_type) == 12, kernel_param::workgroup_size == 64, and kernel_param::data_per_workitem == 96
    • sizeof(key_type) + sizeof(val_type) == 16, kernel_param::workgroup_size == 64, and kernel_param::data_per_workitem == 64