https://github.com/nssharmaofficial/kmeans-in-cuda
K-Means algorithm parallelized in CUDA
https://github.com/nssharmaofficial/kmeans-in-cuda
cpp cuda cuda-programming high-performance high-performance-computing k-means k-means-algorithm k-means-clustering parallel parallel-computing
Last synced: 6 months ago
JSON representation
K-Means algorithm parallelized in CUDA
- Host: GitHub
- URL: https://github.com/nssharmaofficial/kmeans-in-cuda
- Owner: nssharmaofficial
- License: mit
- Created: 2022-02-14T19:58:35.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-09-05T17:54:04.000Z (about 1 year ago)
- Last Synced: 2025-04-05T00:37:02.973Z (6 months ago)
- Topics: cpp, cuda, cuda-programming, high-performance, high-performance-computing, k-means, k-means-algorithm, k-means-clustering, parallel, parallel-computing
- Language: Cuda
- Homepage:
- Size: 23.3 MB
- Stars: 9
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# K-means parallel computing in CUDA
This project was an assignment for the High Performance Computing class at University of Siena. You can look at the final [report](./HPCA_kmeans_cuda_report.pdf) for more details.
## How to run this code
Before trying to execute both sequential and parallel version of k-means algorithm it is important to extract `datapoints.zip` in the same folder of the codes.
The parameters will be initialized according to user choices after the execution start.
If you want to visualize the results you need to create in the same folder of the code a directory named `outdir`, execute your simulation and then take the file `clusters.csv` from `outdir`, which
must be used in the python script `cluster_displayer.py`.1. sequential compiler line on linux:
```terminal
g++ -o kmeans_sequential kmeans_sequential.cpp
```2. parallel compiler line on linux:
```terminal
nvcc kmeans_parallel.cu -o kmeans_parallel
```