Welcome to Data-parallel Control (dpctl)’s documentation!

The data-parallel control (dpctl) library provides C and Python bindings for SYCL 2020. The SYCL 2020 features supported by dpctl are limited to those included by Intel’s DPCPP compiler and specifically cover the SYCL runtime classes described in Section 4.6 of the SYCL 2020 specification. Apart from the bindings for these runtime classes, dpctl includes bindings for SYCL USM memory allocators and deallocators. Dpctl’s Python API provides classes that implement Python buffer protocol using SYCL USM memory; making it possible to create Python objects that are backed by SYCL USM memory.

Dpctl also supports the DPCPP ONEAPI::filter_selector extension and has experimental support for SYCL’s kernel and program classes.

User Guides

API Documentation

About

dpctl is developed by Intel and is part of the Intel Distribution for Python.

Contributing

Refer the contributing guide for information on coding style and standards used in dpctl.

License

dpctl is Licensed under Apache License 2.0 that can be found in LICENSE. All usage and contributions to the project are subject to the terms and conditions of this license.