1010## Architecture
1111
1212```
13- Python API → Cython Bindings → C API → C++ Kernels → SYCL Runtime
14- dpctl/ _sycl_*.pyx libsycl- libtensor/
15- interface/
13+ Python API → Cython Bindings → C API → SYCL Runtime
14+ dpctl/ _sycl_*.pyx libsyclinterface/
15+
16+ dpctl.tensor → pybind11 → C++ Kernels (libtensor/) → SYCL Runtime
1617```
1718
1819## Directory Guide
@@ -23,33 +24,36 @@ Python API → Cython Bindings → C API → C++ Kernels → SYCL Runtim
2324| ` dpctl/tensor/ ` | [ dpctl/tensor/AGENTS.md] ( dpctl/tensor/AGENTS.md ) | Array API tensor operations |
2425| ` dpctl/tensor/libtensor/ ` | [ dpctl/tensor/libtensor/AGENTS.md] ( dpctl/tensor/libtensor/AGENTS.md ) | C++ SYCL kernels |
2526| ` dpctl/memory/ ` | [ dpctl/memory/AGENTS.md] ( dpctl/memory/AGENTS.md ) | USM memory management |
27+ | ` dpctl/program/ ` | [ dpctl/program/AGENTS.md] ( dpctl/program/AGENTS.md ) | SYCL kernel compilation |
28+ | ` dpctl/utils/ ` | [ dpctl/utils/AGENTS.md] ( dpctl/utils/AGENTS.md ) | Utility functions |
2629| ` dpctl/tests/ ` | [ dpctl/tests/AGENTS.md] ( dpctl/tests/AGENTS.md ) | Test suite |
2730| ` libsyclinterface/ ` | [ libsyclinterface/AGENTS.md] ( libsyclinterface/AGENTS.md ) | C API layer |
2831
2932## Code Style
3033
31- Style tools and configuration are defined in :
32- - ** Python/Cython:** ` .pre-commit-config.yaml ` (black, isort, flake8, cython-lint)
34+ Configuration files (do not hardcode versions - check these files) :
35+ - ** Python/Cython:** ` .pre-commit-config.yaml `
3336- ** C/C++:** ` .clang-format `
34- - ** Linting config :** ` .flake8 `
37+ - ** Linting:** ` .flake8 `
3538
3639## License Header
3740
38- All source files require Apache 2.0 header with Intel copyright. See existing files for format.
41+ All source files require Apache 2.0 header with Intel copyright. Reference existing files for exact format.
3942
4043## Quick Reference
4144
4245``` python
4346import dpctl
4447import dpctl.tensor as dpt
4548
46- q = dpctl.SyclQueue(" gpu" ) # Create queue
47- x = dpt.ones((100 , 100 ), dtype = " f4" , device = q) # Create array
48- np_array = dpt.asnumpy(x) # Transfer to host
49+ q = dpctl.SyclQueue(" gpu" ) # Create queue
50+ x = dpt.ones((100 , 100 ), dtype = " f4" , sycl_queue = q) # Create array
51+ np_array = dpt.asnumpy(x) # Transfer to host
4952```
5053
5154## Key Concepts
5255
5356- ** Queue:** Execution context binding device + context
5457- ** USM:** Unified Shared Memory (device/shared/host types)
5558- ** Filter string:** Device selector syntax ` "backend:device_type:num" `
59+ - ** Array API:** Python standard for array operations (https://data-apis.org/array-api/ )
0 commit comments