Awesome
K-Means
<img alt="license" src="https://img.shields.io/github/license/mashape/apistatus.svg"/>This repository contains a k-means implementation for CUDA and SYCL.
Requirements
You have to intall the following dependencies:
- CUDA Toolkit 11.7
- oneAPI 2022.3
- Intel Clang/LLVM -> In order to run SYCL over Nvidia GPUs.
- hipSYCL -> Optional.
Project Structure
The repository is ordered in this folders:
- He_Vialle_impl: Has the original implementation, you can found it here.
- custom_impl: Has the CUDA and SYCL custom implementations based on the original one.
- etc: Has the scripts to automatically get the application times.
- data: You have there all the data requiered to reproduce the experiments.
Publications
- Youssef Faqir-Rhazoui and Carlos García (2023). "Exploring the Performance and Portability of the k-means Algorithm on SYCL Across CPU and GPU Architectures". The Journal of Supercomputing.
Acknowledgements
This work has been supported by the EU (FEDER), the Spanish MINECO and CM under grants S2018/TCS-4423, PID2021-126576NB-I00 funded by MCIN/AEI/10.13039/501100011033 and by "ERDF A way of making Europe".