Efficient Subgraph Matching Using GPUs
The explosive growth of various social networks such as Facebook, Twitter, and Instagram has brought in new needs for efficient graph algorithms. As a basic graph operation, subgraph matching is the foundation of many of these algorithms. Consequently, the efficiency of subgraph matching is very important and determines the speed of the whole data mining process. The development of multi-core CPUs allows subgraph matching algorithms to process multiple data at a time. However, the number of threads is still limited, which has become a bottleneck of these CPU-based algorithms. A workaround is using clusters of powerful servers, which normally incurs very expensive network transfer overhead. Therefore, improving the efficiency and parallel abilities of a single computer is a better idea. One of the most effective way to achieve this is making use of GPUs. With the ability of executing thousands of threads simultaneously, GPUs have a great potential to accelerate the subgraph matching. In this paper, we leverage the power of GPUs and propose an efficient subgraph matching algorithm. The experimental results show that our algorithm outperforms the state-of-the-art algorithm by an order of magnitude.
KeywordsSubgraph matching GPU relation join
Unable to display preview. Download preview PDF.
- 1.Atre, M., Chaoji, V., Zaki, M.J., Hendler, J.A.: Matrix bit loaded: A scalable light weight join query processor for rdf data. In: Proceedings of the 19th International Conference on World Wide Web, pp. 41–50. ACM (2010)Google Scholar
- 2.Branden, C., Tooze, J., et al.: Introduction to protein structure, vol. 2. Garland, New York (1991)Google Scholar
- 3.Chakrabarti, D., Zhan, Y., Faloutsos, C.: R-mat: A recursive model for graph mining. Computer Science Department, 541 (2004)Google Scholar
- 4.Cheng, J., Yu, J.X., Ding, B., Yu, P.S., Wang, H.: Fast graph pattern matching. In: IEEE 24th International Conference on Data Engineering, ICDE 2008, pp. 913–922. IEEE (2008)Google Scholar
- 8.Garcia-Molina, H., Ullman, J.D., Widom, J.: Database system implementation, vol. 654. Prentice Hall Upper Saddle River, NJ (2000)Google Scholar
- 9.He, B., Yang, K., Fang, R., Lu, M., Govindaraju, N., Luo, Q., Sander, P.: Relational joins on graphics processors. In: Proceedings of the 2008 ACM SIGMOD International Conference on Management of Data, pp. 511–524. ACM (2008)Google Scholar
- 10.He, H., Singh, A.K.: Graphs-at-a-time: Query language and access methods for graph databases. In: Proceedings of the 2008 ACM SIGMOD International Conference on Management of Data, pp. 405–418. ACM (2008)Google Scholar
- 11.Kaldewey, T., Lohman, G., Mueller, R., Volk, P.: Gpu join processing revisited. In: Proceedings of the Eighth International Workshop on Data Management on New Hardware, pp. 55–62. ACM (2012)Google Scholar
- 13.NVIDIA: CUDA C best practices guide (2013)Google Scholar
- 14.Sun, Z., Wang, H., Shao, B., Li, J.: Efficient subgraph matching on billion node graphs. Proceedings of the VLDB …, 788–799 (2012)Google Scholar
- 16.Yan, X., Yu, P.S., Han, J.: Substructure similarity search in graph databases. In: Proceedings of the 2005 ACM SIGMOD International Conference on Management of Data, pp. 766–777. ACM (2005)Google Scholar
- 17.Zhu, F., Qu, Q., Lo, D., Yan, X., Han, J., Yu, P.: Mining top-k large structural patterns in a massive network. Proceedings of the VLDB Endowment 4(11) (2011)Google Scholar