JOURNAL ARTICLE

FPGA-based K-means clustering using tree-based data structures

Abstract

K-means clustering is a popular technique for partitioning a data set into subsets of similar features. Due to their simple control flow and inherent fine-grain parallelism, K-means algorithms are well suited for hardware implementations, such as on field programmable gate arrays (FPGAs), to accelerate the computationally intensive calculation. However, the available hardware resources in massively parallel implementations are easily exhausted for large problem sizes. This paper presents an FPGA implementation of an efficient variant of K-means clustering which prunes the search space using a binary kd-tree data structure to reduce the computational burden. Our implementation uses on-chip dynamic memory allocation to ensure efficient use of memory resources. We describe the trade-off between data-level parallelism and search space reduction at the expense of increased control overhead. A data-sensitive analysis shows that our approach requires up to five times fewer computational FPGA resources than a conventional massively parallel implementation for the same throughput constraint.

Keywords:
Computer science Massively parallel Parallel computing Cluster analysis Field-programmable gate array Throughput Overhead (engineering) Tree (set theory) Embedded system

Metrics

57
Cited By
7.54
FWCI (Field Weighted Citation Impact)
12
Refs
0.97
Citation Normalized Percentile
Is in top 1%
Is in top 10%

Citation History

Topics

Algorithms and Data Compression
Physical Sciences →  Computer Science →  Artificial Intelligence
Error Correcting Code Techniques
Physical Sciences →  Computer Science →  Computer Networks and Communications
Advanced Clustering Algorithms Research
Physical Sciences →  Computer Science →  Artificial Intelligence

Related Documents

© 2026 ScienceGate Book Chapters — All rights reserved.