microsoft / antares

Antares: an automatic engine for multi-platform kernel generation and optimization. Supporting CPU, CUDA, ROCm, DirectX12, GraphCore, SYCL for CPU/GPU, OpenCL for AMD/NVIDIA, Android CPU/GPU backends.
Other
444 stars 45 forks source link

[SYCL] Use of Unified Shared Memory #283

Closed Michoumichmich closed 3 years ago

Michoumichmich commented 3 years ago

This PR changes the GPU backend to use USM instead of sycl::buffers that can lead to implicit data movements. This allows also to use the same interface for the c-sycl_intel target. It also addresses the FIXME comment given that we can allocate "void" memory.

Signed-off-by: Michel Migdal michel.migdal@codeplay.com

ghost commented 3 years ago

CLA assistant check
All CLA requirements met.

ghostplant commented 3 years ago

Great. Thanks for your PR @Michoumichmich !