Compile and manage SYCL kernels from OpenCL C or SPIR-V source.
| File | Purpose |
|---|---|
_program.pyx |
SyclProgram, SyclKernel extension types |
_program.pxd |
Cython declarations |
__init__.py |
Public API exports |
SyclProgram- Compiled SYCL program containing one or more kernelsSyclKernel- Individual kernel extracted from a program
from dpctl.program import create_program_from_source
source = """
__kernel void add(__global float* a, __global float* b, __global float* c) {
int i = get_global_id(0);
c[i] = a[i] + b[i];
}
"""
program = create_program_from_source(queue, source)
kernel = program.get_sycl_kernel("add")- Programs are context-bound
- Follows same Cython patterns as core dpctl (see
../AGENTS.md)