Skip to main content

kNN-Borůvka-GPU: A Fast and Scalable MST Construction from kNN Graphs on GPU

  • Conference paper
Computational Science and Its Applications – ICCSA 2012 (ICCSA 2012)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 7333))

Included in the following conference series:

Abstract

Computation of the minimum spanning tree (MST) is a common task in numerous fields of research, such as pattern recognition, computer vision, network design (telephone, electrical, hydraulic, cable TV, computer, road networks etc.), VLSI layout, to name a few. However, for a large-scale dataset when the graphs are complete, classical MST computation algorithms become unsuitable on general purpose computers. Interestingly, in such a case the k-nearest neighbor (kNN) structure can provide an efficient solution to this problem. Only a few attempts were found in the literature that focus on solving the problem using the kNNs. This paper briefs the state-of-the-art strategies for the MST problem and a fast and scalable solution combining the classical Borůvka’s MST algorithm and the kNN graph structure. The proposed algorithm is implemented for CUDA enabled GPUs kNN-Borůvka-GPU), but the basic approach is simple and adaptable to other available architectures. Speed-ups of 30-40 times compared with CPU implementation was observed for several large-scale synthetic and real world data sets.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. NVIDIA CUDA - Programming Guide (2007), http://developer.nvidia.com/

  2. Abello, J., Buchsbaum, A.L., Westbrook, J.: A Functional Approach to External Graph Algorithms. In: Bilardi, G., Pietracaprina, A., Italiano, G.F., Pucci, G. (eds.) ESA 1998. LNCS, vol. 1461, pp. 332–343. Springer, Heidelberg (1998)

    Google Scholar 

  3. Arefin, A.S., Inostroza-Ponta, M., Mathieson, L., Berretta, R., Moscato, P.: Clustering Nodes in Large-Scale Biological Networks Using External Memory Algorithms. In: Xiang, Y., Cuzzocrea, A., Hobbs, M., Zhou, W. (eds.) ICA3PP 2011, Part II. LNCS, vol. 7017, pp. 375–386. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  4. Arefin, A.S., Riveros, C., Berretta, R., Moscato, P.: Gpu-fs-knn: A fast and scalable knn computation technique using gpu. Faculty Postgrad Research Poster, The University of Newcastle, Australia (September 2011), http://www.newcastle.edu.au/Resources/Faculties/Faculty%20of%20Engineering%20and%20Built%20Environment/Research/Arefin.pdf

  5. Bader, D.A., Cong, G.: Fast shared-memory algorithms for computing the minimum spanning forest of sparse graphs. J. P. Dist. Comp. 66, 1366–1378 (2006)

    MATH  Google Scholar 

  6. Bader, D.A., Madduri, K.: GTgraph: A suite of synthetic graph generators (2006)

    Google Scholar 

  7. Barr, R.S., Helgaon, R.V., Kennington, J.L.: Minimal spanning trees: an empirical investigation of parallel algorithms. Parallel Computing 12(1), 45–52 (1989)

    Article  MATH  Google Scholar 

  8. Bentley, J.L., Friedman, J.H.: Fast algorithms for constructing minimal spanning trees in coordinate spaces. IEEE Trans. Comput. 27, 97–105 (1978)

    Article  MATH  Google Scholar 

  9. Boruvka, O.: O Jistém Problému Minimálním (About a Certain Minimal Problem) (in Czech, German summary). Práce Mor. Prírodoved. Spol. v Brne III 3 (1926)

    Google Scholar 

  10. Chung, S., Condon, A.: Parallel implementation of borvka’s minimum spanning tree algorithm. In: Proceedings of the 10th International Parallel Processing Symposium, IPPS 1996, pp. 302–308 (1996)

    Google Scholar 

  11. Dehne, F., Götz, S.: Practical parallel algorithms for minimum spanning trees. In: Symposium on Reliable Distributed Systems, pp. 366–371 (1998)

    Google Scholar 

  12. Demetrescu, C., Goldberg, A., Johnson, D.: 9th DIMACS implementation challenge - shortest paths (2006), http://www.dis.uniroma1.it/~challenge9/

  13. Dyen, I., Kruskal, J.B., Black, P.: An indoeuropean classification: A lexicostatistical experiment. Trans. of the American Phil. Soc. 82(5), iii–iv, 1–132

    Google Scholar 

  14. Graham, R.L., Hell, P.: On the history of the minimum spanning tree problem. IEEE Ann. Hist. Comput. 7, 43–57 (1985)

    Article  MathSciNet  MATH  Google Scholar 

  15. Harish, P., Narayanan, P.J.: Accelerating Large Graph Algorithms on the GPU Using CUDA. In: Aluru, S., Parashar, M., Badrinath, R., Prasanna, V.K. (eds.) HiPC 2007. LNCS, vol. 4873, pp. 197–208. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  16. Harris, M.: Optimizing parallel reduction in cuda. NVIDIA Developer Tech. (2008)

    Google Scholar 

  17. Hoberock, J., Bell, N.: Thrust - a productivity-oriented library for cuda. Template library, Version 1.4 (2010), http://code.google.com/p/thrust/

  18. Inostroza-Ponta, M.: An Integrated and Scalable Approach Based on Combinatorial Optimization Techniques for the Analysis of Microarray Data. Ph.D. thesis, School of Electrical Engineering and Computer Science, The University of Newcastle, Australia (2008)

    Google Scholar 

  19. Johnson, D.B., Metaxas, P.: A parallel algorithm for computing minimum spanning trees. In: Proceedings of the Fourth Annual ACM Symposium on Parallel Algorithms and Architectures, SPAA 1992, pp. 363–372 (1992)

    Google Scholar 

  20. Kang, S., Bader, D.A.: An efficient transactional memory algorithm for computing minimum spanning forest of sparse graphs. In: Proc. of the 14th ACM SIGPLAN Symp., Principles and Practice of Parallel Programming, PPoPP, pp. 15–24 (2009)

    Google Scholar 

  21. Moret, B.M.E., Shapiro, H.D.: An empirical assessment of algorithms for constructing a minimum spanning tree. DIMACS Monographs (1994)

    Google Scholar 

  22. Murtagh, F.: A survey of recent advances in hierarchical clustering algorithms. Comput. J. 26(4), 354–359 (1983)

    MATH  Google Scholar 

  23. Nesetril, J., Milkov, E., Nesetrilov, H.: Otakar boruvka on minimum spanning tree problem translation of both the 1926 papers, comments, history. Discrete Mathematics 233(1-3), 3–36 (2001)

    Article  MathSciNet  MATH  Google Scholar 

  24. Nobari, S.H., Bressan, S., Rassi, C.: A data parallel minimum spanning tree algorithm for most graphics processing units. In: Proc. of the Int. Con. ADPC (2010)

    Google Scholar 

  25. Rostrup, S., Srivastava, S., Singhal, K.: Fast and memory-efficient minimum spanning tree on the gpu (2011)

    Google Scholar 

  26. Siek, J., Lee, L.Q., Lumsdaine, A.: Boost random number library (June 2000), http://www.boost.org/libs/graph/

  27. Sintorn, E., Assarsson, U.: Fast parallel gpu-sorting using a hybrid algorithm. J. Parallel Distrib. Comput. 68, 1381–1388 (2008)

    Article  Google Scholar 

  28. Tepper, M., Mejail, M., Musé, P., Almansa, A.: Boruvka Meets Nearest Neighbors (2011), http://hal.archives-ouvertes.fr/docs/00/58/31/20/PDF/preprint.pdf

  29. van de Vijver, M.J., He, Y.D., et al.: A gene-expression signature as a predictor of survival in breast cancer. The New England JM 347(25), 1999–2009 (2002)

    Article  Google Scholar 

  30. Vineet, V., Harish, P., Patidar, S., Narayanan, P.J.: Fast minimum spanning tree for large graphs on the gpu. In: Proc. of Conf. on HPG, pp. 167–171. ACM (2009)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Arefin, A.S., Riveros, C., Berretta, R., Moscato, P. (2012). kNN-Borůvka-GPU: A Fast and Scalable MST Construction from kNN Graphs on GPU. In: Murgante, B., et al. Computational Science and Its Applications – ICCSA 2012. ICCSA 2012. Lecture Notes in Computer Science, vol 7333. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-31125-3_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-31125-3_6

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-31124-6

  • Online ISBN: 978-3-642-31125-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics