Enhancing K-Means Clustering Efficiency on FPGA: A Three-Design Approach to Parallel Implementation

The K-means clustering algorithm, which is widely used to find correlations between data in different application domains, is a suitable technique for clustring a data set into subsets of similar features. Due to the possibility of simple parallelization, this algorithm can be implemented in parallel on hardware such as FPGA, GPU, etc. to perform intensive calculations in a short period of time. However, the hardware resources available in parallel implementations are challenging for large-sized data. This paper introduces an efficient implementation of the K-means clustering algorithm on FPGA, aiming to reduce computational load and enhance performance for large-sized data sets. By dividing the search space into parts and designing specific hardware units for each part on the FPGA, the implementation optimizes the use of on-chip memory resources. Various implementations, including Custom IP_core, Microblaze, and a combination of both, are evaluated on the ML506 Virtex5 board. Results indicate that the Custom IP_core-based design outperforms other methods, showing higher calculation speed and lower resource consumption.

Authors

Institutions

Publication Details

Published
2024-11-13
DOI
https://doi.org/10.1109/ewdts63723.2024.10873792
Primary Topic
Advanced Clustering Algorithms Research
Type
article
Field-Weighted Citation Impact
0.00
Controls
|||
ALL TIME
JAN
FEB
MAR
APR
MAY
JUN
JUL
AUG
SEP
OCT
article

Enhancing K-Means Clustering Efficiency on FPGA: A Three-Design Approach to Parallel Implementation

‪Mina Zolfy Lighvan, Mohammad Asadpour, Saeed Shokraneh
Advanced Clustering Algorithms Research
article

Enhancing K-Means Clustering Efficiency on FPGA: A Three-Design Approach to Parallel Implementation

‪Mina Zolfy Lighvan, Mohammad Asadpour, Saeed Shokraneh
article en

Abstract

The K-means clustering algorithm, which is widely used to find correlations between data in different application domains, is a suitable technique for clustring a data set into subsets of similar features. Due to the possibility of simple parallelization, this algorithm can be implemented in parallel on hardware such as FPGA, GPU, etc. to perform intensive calculations in a short period of time. However, the hardware resources available in parallel implementations are challenging for large-sized data. This paper introduces an efficient implementation of the K-means clustering algorithm on FPGA, aiming to reduce computational load and enhance performance for large-sized data sets. By dividing the search space into parts and designing specific hardware units for each part on the FPGA, the implementation optimizes the use of on-chip memory resources. Various implementations, including Custom IP_core, Microblaze, and a combination of both, are evaluated on the ML506 Virtex5 board. Results indicate that the Custom IP_core-based design outperforms other methods, showing higher calculation speed and lower resource consumption.

University of Tabriz (IR)
Openalex Percentile: Top 75%
Advanced Clustering Algorithms Research
AI Navigator

Ask Laika to Summarize, Analyze, and Connect papers live on the map.

Summarize Papers & Methodologies

Extract key findings, datasets, and comparative methods across publications.

Benchmark Rankings & Visual Analytics

Rank top research institutions, authors, funders, topics, and journals by Field-Weighted Citation Impact (FWCI) and paper volume with instant charts.

Connect Distant Disciplines

Bridge topological clusters on the map to find hidden collaborative intersections.