oneDPL
oneDPL copied to clipboard
[KT][ESIMD Sort] Code quality improvements
These are the gaps which remain after the main review (#1257):
- Separate declaration and definition (can be postponed until productization): See discussion: https://github.com/oneapi-src/oneDPL/pull/1257#discussion_r1407746163.
- Use
zip_iterator
/zip_view
instead of__rng_pack
: See discusison: https://github.com/oneapi-src/oneDPL/pull/1257#discussion_r1407747819 and https://github.com/oneapi-src/oneDPL/pull/1257#discussion_r1407876412. - Consolidate trivial checks for the sequence length (see the checks like
if (__keys_last - __keys_first < 2)
). - Refactor
__onesweep_memory_holder
class. See discussion: https://github.com/oneapi-src/oneDPL/pull/1257#discussion_r1409124463. - Consider renaming
__vector_store
overloads to denote that they work withSLM
. See discussion: https://github.com/oneapi-src/oneDPL/pull/1257#discussion_r1415838864. - Get rid of loops in
__one_wg_kernel
and use native functions or helper wrappers where possible. Avoid bitcasts touint32_t
. See discussion: https://github.com/oneapi-src/oneDPL/pull/1257#discussion_r1415678866 - Make
_ONEDPL_ESIMD_INLINE
a genera macro to enforce inlining or replace it if there is an existing one. See discussion: https://github.com/oneapi-src/oneDPL/pull/1257#discussion_r1420753706