García Sánchez, CarlosEl Faqir El Rhazoui, Youssef2024-05-162024-05-162023-05-1510.1007/s11227-023-05373-2https://hdl.handle.net/20.500.14352/1041122023 Acuerdos transformativos CRUEThe aim of SYCL is to reduce the gap between the performance and code portability of the main accelerators used in HPC, such as multi-vendor CPUs, GPUs, and FPGAs. To evaluate SYCL’s performance portability, this paper uses the k-means algorithm as a case study. The k-means algorithm is simple to code but can be complex to optimize. In this research, we compare our developed SYCL version with the most efficient implementations of CUDA and OpenMP. Our resulting SYCL code can potentially run on multi-vendor CPUs and GPUs. Additionally, we have created a hand-tuned SYCL variation that is optimized for specific device architectures (CPU, NVIDIA GPU, and Intel GPU) to evaluate the performance difference between a standard version and an optimized one. The results show that SYCL outperforms Intel GPUs and CPUs compared to the state-of-the-art He-Vialle version, while on NVIDIA GPUs SYCL offers equivalent performance compared to its native CUDA implementation.engAttribution 4.0 Internationalhttp://creativecommons.org/licenses/by/4.0/Exploring the performance and portability of the k-means algorithm on SYCL across CPU and GPU architecturesjournal articlehttps://link.springer.com/article/10.1007/s11227-023-05373-2open accessK-meansSYCLOneAPICUDAGPUInformática (Informática)33 Ciencias Tecnológicas