Open
Description
The _dpexrt_python
is a Python extension module used by numba-dpex to support several disparate functionalities, such as, dpnp constructors, usm memory allocators, boxing and unboxing helper functions for dpnp.ndarray and some wrappers over dpctl's libsyclinterface. All the different functionalities are stuffed into the same _dpexrt_python.c
file.
The redesign of _dpex_python
should achieve the following:
- Split the different functionalities into separate sub-modules.
- Convert the modules to C++.
- Evaluate if we should directly link to libsycl instead of libsyclinterface.
- Generate API docs
- Add unit test cases using gtest and gmock.