The ever-increasing size of data sets and the need for real-time processing drives the need for high speed analysis. Since traditional CPUs are designed to execute a small number of sequential process, they are ill-suited to keep pace with this growth and exploit the massive parallelism inherent in these problem spaces. In the last several years, the parallelism of GPUs has made them a viable solution for general purpose computing. However, effective use of GPUs requires a significantly different programming paradigm. Towards the goal of creating a function library that maximizes the performance improvement of GPUs in data analysis and clustering, this paper presents an implementation of a general n-dimensional distance calculation commonly used in these types of algorithms. Experimental results show up to a 390x speedup using a Tesla C1060 and up to a 538x speedup using a GeForce GTX 480 over an Intel Core i7.
© 2011 WorldComp
Available at: http://works.bepress.com/dave-foster/10/
pp. 374-378