arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 1906.03420cs.DB
收藏

GSI:GPU友好的子图同构

GSI: GPU-friendly Subgraph Isomorphism

Li Zeng, Lei Zou, M. Tamer Özsu, Lin Hu, Fan Zhang

摘要:

子图同构是一个众所周知的NP难问题,广泛应用于许多应用中,例如社会网络分析和知识图谱查询。由于固有的硬度,其性能在各种实际应用中往往是一个瓶颈。因此,我们解决这个问题,设计一个有效的子图同构算法,利用GPU架构的功能,如大规模并行和存储层次结构。现有的基于GPU的解决方案采用两步输出方案,执行相同的连接过程两次,以便并发地写入中间结果。它们还缺乏GPU架构感知优化,允许扩展到大型图形。在本文中,我们提出了一个GPU友好的子图同构算法,GSI。与现有的基于边连接的GPU解决方案不同,本文提出了一种基于面向顶点框架的Prealloc-Combine策略,避免了现有解决方案中的两次连接。此外,一个GPU友好的数据结构(称为PCSR)被提出来表示一个边缘标记的图。在合成图和真实图上的大量实验表明,GSI的性能优于最先进的算法高达几个数量级,并具有良好的可扩展性,图的大小扩展到数亿条边。

英文摘要:

Subgraph isomorphism is a well-known NP-hard problem that is widely used in many applications, such as social network analysis and query over the knowledge graph. Due to the inherent hardness, its performance is often a bottleneck in various real-world applications. Therefore, we address this by designing an efficient subgraph isomorphism algorithm leveraging features of GPU architecture, such as massive parallelism and memory hierarchy. Existing GPU-based solutions adopt a two-step output scheme, performing the same join process twice in order to write intermediate results concurrently. They also lack GPU architecture-aware optimizations that allow scaling to large graphs. In this paper, we propose a GPU-friendly subgraph isomorphism algorithm, GSI. Different from existing edge join-based GPU solutions, we propose a Prealloc-Combine strategy based on the vertex-oriented framework, which avoids joining-twice in existing solutions. Also, a GPU-friendly data structure (called PCSR) is proposed to represent an edge-labeled graph. Extensive experiments on both synthetic and real graphs show that GSI outperforms the state-of-the-art algorithms by up to several orders of magnitude and has good scalability with graph size scaling to hundreds of millions of edges.

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑