This project demonstrates how to write a Python extension module with DPC++. The Python extension will take an OpenCV image stored in a Numpy array and do image processing. The actual image processing code is using DPC++ kernel and the rest is written in standard C++ code.
DPC++ is a Clang based compiler developed by Intel which includs Khronos SYCL extension and Intel specific SYCL extensions. It enables seamless heterogeneous programming and can support not only CPU but also integrated GPU, FPGA and more to come.
- DPC++ compiler (from oneAPI Base Toolkit 2021.3)
build.sh
python_dpcpp_module.so
will be generated.
python3 test.py
Tested on Ubuntu 20.04.