Experience with a Hybrid Processor: K-Means Clustering

We discuss hardware/software co-processing on a hybrid processor for a compute- and data-intensive multispectral imaging algorithm, k-means clustering. The experiments are performed on two models of the Altera Excalibur board, the first using the soft IP core 32-bit NIOS 1.1 RISC processor, and the second with the hard IP core ARM processor. In our experiments, we compare performance of the sequential k-means algorithm with three different accelerated versions. We consider granularity and synchronization issues when mapping an algorithm to a hybrid processor. Our results show that speedup of 11.8X is achieved by migrating computation to the Excalibur ARM hardware/software as compared to software only on a Gigahertz Pentium III. Speedup on the Excalibur NIOS is limited by the communication cost of transferring data from external memory through the processor to the customized circuits. This limitation is overcome on the Excalibur ARM, in which dual-port memories, accessible to both the processor and configurable logic, have the biggest performance impact of all the techniques studied.

[1]  Robert M. Gray,et al.  An Algorithm for Vector Quantizer Design , 1980, IEEE Trans. Commun..

[2]  Dominique Lavenier,et al.  Evaluation of the streams-C C-to-FPGA compiler: an applications perspective , 2001, FPGA '01.

[3]  Maya Gokhale,et al.  The NAPA adaptive processing architecture , 1998, Proceedings. IEEE Symposium on FPGAs for Custom Computing Machines (Cat. No.98TB100251).

[4]  Olli Nevalainen,et al.  Iterative split-and-merge algorithm for vector quantization codebook generation , 1998 .

[5]  Maya Gokhale,et al.  Co-Synthesis to a Hybrid RISC/FPGA Architecture , 2000, J. VLSI Signal Process..

[6]  James Theiler,et al.  Algorithmic transformations in the implementation of K- means clustering on reconfigurable hardware , 2001, FPGA '01.

[7]  Bo Thiesson,et al.  Accelerating EM for Large Databases , 2001, Machine Learning.

[8]  Dominique Lavenier FPGA implementation of the k-means clustering algorithm for hyperspectral images , 2000 .

[9]  James Theiler,et al.  Clustering to improve matched filter detection of weak gas plumes in hyperspectral thermal imagery , 2001, IEEE Trans. Geosci. Remote. Sens..

[10]  Michael W. Marcellin,et al.  A vector quantizer for image restoration , 1996, Proceedings of 3rd IEEE International Conference on Image Processing.

[11]  Michael D. Smith,et al.  A high-performance microarchitecture with hardware-programmable functional units , 1994, Proceedings of MICRO-27. The 27th Annual IEEE/ACM International Symposium on Microarchitecture.

[12]  Maya Gokhale,et al.  Co-design of software and hardware to implement remote sensing algorithms , 2002, SPIE Optics + Photonics.

[13]  John Wawrzynek,et al.  Garp: a MIPS processor with a reconfigurable coprocessor , 1997, Proceedings. The 5th Annual IEEE Symposium on Field-Programmable Custom Computing Machines Cat. No.97TB100186).

[14]  B. Hunt,et al.  A vector quantizer for image restoration. , 1998, IEEE transactions on image processing : a publication of the IEEE Signal Processing Society.