The directory contains documents that describe DPC++ extensions to SYCL specification.
DPC++ extensions status:
Extension | Status | Comment |
---|---|---|
SYCL_INTEL_bitcast | Supported | As sycl::detail::bit_cast |
C and C++ Standard libraries support | Partially supported(OpenCL: CPU, GPU) | |
SYCL_INTEL_data_flow_pipes | Partially supported(OpenCL: ACCELERATOR) | kernel_host_pipe_support part is not implemented |
SYCL_INTEL_deduction_guides | Supported | |
SYCL_INTEL_device_specific_kernel_queries | Proposal | |
SYCL_INTEL_enqueue_barrier | Supported(OpenCL, Level Zero) | |
SYCL_INTEL_extended_atomics | Supported(OpenCL: CPU, GPU) | |
SYCL_INTEL_group_algorithms | Supported(OpenCL; CUDA) | |
SYCL_INTEL_group_mask | Proposal | |
FPGA selector | Supported | |
FPGA reg | Supported(OpenCL: ACCELERATOR) | |
SYCL_INTEL_kernel_restrict_all | Supported(OpenCL) | |
SYCL_INTEL_attribute_style | Proposal | |
Queue Order Properties | Supported | |
Queue Shortcuts | Supported | |
Reductions for ND-Range Parallelism | Partially supported(OpenCL: CPU, GPU; CUDA) | Not supported: multiple reduction vars, multi-dimensional reduction vars |
SYCL_INTEL_relax_standard_layout | Supported | |
SYCL_INTEL_reqd_work_group_size | Supported(OpenCL: CPU, GPU) | |
SPV_INTEL_function_pointers | Supported(OpenCL: CPU, GPU; HOST) | |
SPV_INTEL_inline_assembly | Supported(OpenCL: GPU) | |
SYCL_INTEL_local_memory | Proposal | |
SYCL_INTEL_static_local_memory_query | Proposal | |
SYCL_INTEL_sub_group_algorithms | Partially supported(OpenCL: CPU, GPU) | Features from SYCL_INTEL_group_algorithms extended to sub-groups |
Sub-groups for NDRange Parallelism | Deprecated(OpenCL: CPU, GPU) | |
Sub-groups | Partially supported(OpenCL) | Not supported: auto/stable sizes, stable query, compiler flags |
SYCL_INTEL_unnamed_kernel_lambda | Supported(OpenCL) | |
Unified Shared Memory | Supported(OpenCL) | |
Use Pinned Memory Property | Supported | |
Level-Zero backend specification | Supported | |
ITT annotations support | Supported | |
SYCL_EXT_ONEAPI_DEVICE_IF | Proposal | |
SYCL_INTEL_group_sort | Proposal | |
Invoke SIMD | Proposal | |
Uniform | Proposal | |
Assert | Proposal | |
Matrix | Partially supported(AMX AOT) | Not supported: dynamic-extent, wg and wi scopes, layouts other than packed |
SYCL_INTEL_free_function_queries | Supported (experimental) |
Legend:
Keyword | Meaning |
---|---|
Proposal | A document describing an extension is published, but the extension is not supported yet |
Supported | An extension is supported |
Partially supported | An extension is partially supported, see comments column for more info |
Deprecated | An extension is deprecated and can be removed in future versions |
(API: DeviceType1, DeviceType2) | An extension is supported when specific combination of API and device types are used. If device type or API are not mentioned then an extension is supported on any device type or API. API can be OpenCL, CUDA, HOST. DeviceType can be CPU, GPU, ACCELERATOR |
See User Manual to find information how to enable extensions.