DOI QR코드

DOI QR Code

A Parallel Algorithm for Measuring Graph Similarity Using CUDA on GPU

GPU에서 CUDA를 이용한 그래프 유사도 측정을 위한 병렬 알고리즘

  • 손민영 (금오공과대학교 컴퓨터공학과) ;
  • 김영학 (금오공과대학교 컴퓨터공학과) ;
  • 최성자 (홍익대학교 경영학과)
  • Received : 2016.11.11
  • Accepted : 2016.12.28
  • Published : 2017.03.15

Abstract

Measuring the similarity of two graphs is a basic tool to solve graph problems in various applications. Most graph algorithms have a high time complexity according to the number of vertices and edges. Because Graphics Processing Units (GPUs) have a high computational power and can be obtained at a low cost, these have been widely used in graph applications to improve execution time. This paper proposes an efficient parallel algorithm to measure graph similarity using the CUDA on a GPU environment. The experimental results show that the proposed approach brings a considerable improvement in performance and efficiency when compared to CPU-based results. Our results also show that the performance is improved significantly as the size of the graph increases.

두 그래프의 유사도를 측정하는 문제는 다양한 응용분야에서 그래프 문제를 해결하기 위한 기본적인 도구 중 하나이다. 대부분 그래프 알고리즘들은 정점과 간선의 개수를 기반으로 한 시간 복잡도를 가진다. 최근 GPU는 낮은 가격 대비 높은 계산 능력을 제공하기 때문에 그래프 응용에서 수행 시간을 개선하기 위해 널리 활용되고 있다. 본 논문에서는 GPU 환경에서 CUDA를 사용하여 그래프의 유사도를 측정하기 위한 효율적인 병렬 알고리즘을 제안한다. 제안된 알고리즘의 평가를 위해 CPU 기반 알고리즘과 비교하였으며 실험적 결과를 통하여 제안된 방법이 성능과 효율성에서 상당한 개선이 있음을 보인다. 또한 그래프의 크기가 클수록 제안된 알고리즘의 성능이 더 개선됨을 보인다.

Keywords

Acknowledgement

Supported by : 금오공과대학교

References

  1. V. D. Blondel, A. Gajardo, M. Heymans, P. Senellart, and P. V. Dooren, "A measure of similarity between graph vertices: Applications to synonym extraction and web searching," SIAM review, Vol. 46, No. 4, pp. 647-666, 2004. https://doi.org/10.1137/S0036144502415960
  2. P. J. Narayanan, "Processor Autonomy on SIMD Architectures," Int. Conf. on Supercomputing, pp. 127-136, 1993. (in USA)
  3. G. J. Katz, and J. T. Kinder Jr, "All-pairs shortest- paths for large graphs on the GPU," Proc. of the 23rd ACM SIGGRAPH/EUROGRAPHICS Symp. on Graphics hardware, pp. 47-55, 2008. (in Switzerland)
  4. K. Matsumoto, N. Nakasato, and S. G. Sedukhin, "Blocked all-pairs shortest paths algorithm for hybrid CPU-GPU system," High Performance Computing and Communications (HPCC), pp. 145-152, 2011. (in Canada)
  5. D. Merrill, M. Garland, and A. Grimshaw, "Scalable GPU graph traversal," ACM SIGPLAN Notices, Vol. 47, No. 8, pp. 117-128, 2012. https://doi.org/10.1145/2370036.2145832
  6. P. Harish, V. Vineet, and P. J. Narayanan, "Large Graph Algorithms for Massively Multithreaded Architectures," Int. Institute of Information Technology Hyderabad, 2009. (in India)
  7. R. Singh, J. Xu, and B. Berger, "Global alignment of multiple protein interaction networks with application to functional orthology detection," Proc. of the National Academy of Sciences, Vol. 105, No. 35, pp. 12763-12768, 2008.
  8. C. Silverstein, S. Brin, and R. Motwani, "Beyond market baskets: Generalizing association rules to dependence rules," Data Min. Knowl. Discov., Vol. 2, No. 1, pp. 39-68, 1998. https://doi.org/10.1023/A:1009713703947
  9. R. Allen, L. Cinque, S. Tanimoto, L. Shapiro, and D. Yasuda, "A parallel algorithm for graph matching and its MasPar implementation," Parallel and Distributed Systems, IEEE Transactions on, Vol. 8, No. 5, pp. 490-501, 1997. https://doi.org/10.1109/71.598276
  10. P. M. Pardalos, J. Rappe, and M.G.C. Resende, "An exact parallel algorithm for the maximum clique problem," High Performance and Software in Nonlinear Optimization, pp. 279-300. 1998.
  11. Y. Shinano, T. Fujie, Y. Ikebe, and R. Hirabayashi, "Solving the maximum clique problem using PUBB," Parallel Processing Symposium, pp. 326-332, 1998.
  12. G. Jeh and J. Widom, "SimRank: a measure of structural-context similarity," Proc. of the eighth ACM SIGKDD international conference on Knowledge discovery and data mining, pp. 538-543, 2002.
  13. Guoming He, Haijun Feng, Cuiping Li, and Hong Chen, "Parallel SimRank computation on large graphs with iterative aggregation," Bharat Rao, Balaji Krishnapuram, Andrew Tomkins, and Qiang Yang, editors, Proc. of the 16th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, pp. 543-552, 2010. (in USA)
  14. M.-Y. Son, Y.-H. Kim, and B.-W. Oh, "An Efficient parallel Algorithm for Graph Isomorphism on GPU using CUDA," Int. J. of Engineering and Technology (IJET), Vol. 7, No. 5, pp. 1840-1848, 2015.
  15. J. M. Kleinberg, "Authoritative sources in a hyperlinked environment," J. of the ACM (JACM), Vol. 46, No. 5, pp. 604-632, 1999. https://doi.org/10.1145/324133.324140
  16. S. Melnik, H. Garcia-Molina, and E. Rahm, "Similarity flooding: A versatile graph matching algorithm and its application to schema matching," Data Engineering, 2002. Proc. 18th Int. Conf. on. IEEE, pp. 117-128, 2002. (in USA)
  17. R. A. Horn, and C. R. Johnson, Matrix analysis, Cambridge university press, 2012.