Implementing FastMap on the GPU: Considerations on General-Purpose Computation on Graphics Hardware

In this paper we focus on the implications of implementing generic algorithms on graphics hardware. As an example, we ported the dimensionality reduction algorithm FastMap to fragment programs and thus accelerated it by orders of magnitude, allowing for interactive tweaking and evaluating of the algorithm parameters for datasets of several hundred thousand points and tens of dimensions; even the animation of structural changes in relation to parameters is possible. This allows to complement the algorithmic heuristic used by FastMap by explorative results from human interaction. Such an approach can be considered a heuristic in itself, but has the advantage of being based on visual feedback, therefore allowing for iterative improvement of the results. Thus we demonstrate how to benefit from the high execution parallelism on commodity graphics hardware as an alternative to making use of other, more costly, multiprocessing techniques. We discuss performance and bandwidth aspects as well as accuracy problems since these results are of more general interest and can be applied to general processing on graphics hardware as a whole.

[1]  David S. Ebert,et al.  Interactively visualizing procedurally encoded scalar fields , 2004, VISSYM'04.

[2]  Hans-Peter Kriegel,et al.  'Circle Segments': A Technique for Visually Exploring Large Multidimensional Data Sets , 1996 .

[3]  James C. French,et al.  Clustering large datasets in arbitrary metric spaces , 1999, Proceedings 15th International Conference on Data Engineering (Cat. No.99CB36337).

[4]  Radomír Mech,et al.  Generating subdivision curves with L-systems on a GPU , 2003, SIGGRAPH '03.

[5]  Hans-Peter Kriegel,et al.  Recursive pattern: a technique for visualizing very large amounts of data , 1995, Proceedings Visualization '95.

[6]  Alfred Inselberg,et al.  The plane with parallel coordinates , 1985, The Visual Computer.

[7]  Thomas Ertl,et al.  Illustrating Magnetic Field Lines using a Discrete Particle Model , 2004, VMV.

[8]  Rüdiger Westermann,et al.  Acceleration techniques for GPU-based volume rendering , 2003, IEEE Visualization, 2003. VIS 2003..

[9]  Charu C. Aggarwal,et al.  On the Surprising Behavior of Distance Metrics in High Dimensional Spaces , 2001, ICDT.

[10]  Anselmo Lastra,et al.  Radiosity on graphics hardware , 2004, Graphics Interface.

[11]  Pat Hanrahan,et al.  Ray tracing on programmable graphics hardware , 2002, SIGGRAPH Courses.

[12]  Pat Hanrahan,et al.  Ray tracing on a connection machine , 1988, ICS '88.

[13]  Matthew Chalmers,et al.  A hybrid layout algorithm for sub-quadratic multidimensional scaling , 2002, IEEE Symposium on Information Visualization, 2002. INFOVIS 2002..

[14]  P. Groenen,et al.  Modern multidimensional scaling , 1996 .

[15]  Thomas Ertl,et al.  Hardware-Accelerated Glyphs for Mono- and Dipoles in Molecular Dynamics Visualization , 2005, EuroVis.

[16]  Stefan Gumhold,et al.  Splatting Illuminated Ellipsoids with Depth Correction , 2003, VMV.

[17]  Ming-Syan Chen,et al.  A robust and efficient clustering algorithm based on cohesion self-merging , 2002, KDD.

[18]  Thomas Ertl,et al.  Volume visualization and visual queries for large high-dimensional datasets , 2004, VISSYM'04.

[19]  H. P. Friedman,et al.  The surgical implications of physiologic patterns in myocardial infarction shock. , 1972, Surgery.

[20]  Pat Hanrahan,et al.  Brook for GPUs: stream computing on graphics hardware , 2004, ACM Trans. Graph..

[21]  Matthew Chalmers,et al.  A Pivot-Based Routine for Improved Parent-Finding in Hybrid MDS† , 2004, Inf. Vis..

[22]  Pat Hanrahan,et al.  Brook for GPUs: stream computing on graphics hardware , 2004, SIGGRAPH 2004.

[23]  Christos Faloutsos,et al.  FastMap: a fast algorithm for indexing, data-mining and visualization of traditional and multimedia datasets , 1995, SIGMOD '95.