oneapi-src / oneDPL

oneAPI DPC++ Library (oneDPL) https://software.intel.com/content/www/us/en/develop/tools/oneapi/components/dpc-library.html
Apache License 2.0
715 stars 112 forks source link

[KT] Rename out-of-place esimd radix_sort as radix_sort_copy #1629

Open danhoeflinger opened 3 weeks ago

danhoeflinger commented 3 weeks ago

It is the convention of the standard library when both an in-place and out-of-place algorithm are provided to to label out-of-place versions of APIs as *_copy. See partial_sort[_copy], remove[_copy], partition[_copy], etc..

This PR deprecates the existing out-of-place overloads for radix_sort and radix_sort_by_key in favor of radix_sort_copy and radix_sort_copy_by_key. We originally avoided this to limit the line length with the large KT namespace, but the convention is strong and consistent enough to warrant this change.

This updates the code, the testing, and the documentation.

This PR is based on #1586 to avoid merge conflicts, and should be merged into main after that PR is merged. For now I will point it at that PR and keep it as "draft", to properly show the diff.