Portable data-parallel Python extensions using oneAPI
- Track:
- Jupyter and Scientific Python
- Type:
- Poster
- Level:
- intermediate
- Duration:
- 60 minutes
Abstract
The Unified Acceleration Foundation (UXL), under the umbrella of Linux Foundation, is driving an open standard accelerator software ecosystem that includes compilers and performance libraries. This software ecosystem standardizes programming different types of accelerators, such as multi-core CPUs, GPUs, some FPGAs, etc. from different vendors. This poster presents the ongoing work to extend the UXL software ecosystem to Python. The UXL Python ecosystem enables building portable, data-parallel Python extensions using standard Python tooling using scikit-build
, meson
and popular extension generators such as Cython
or pybind11
.
We showcase sample Python extension that can target multiple types of accelerators in the same Python session, including NVIDIA, AMD, and Intel GPUs.