Abstract:
With the continuous advancement of computer hardware and software, graph computing has been widely applied in many fields, including social network analysis, recommendation systems, bioinformatics, and fraud detection. The memory access behavior in graph computing is highly variable: different kernels accessing property arrays exhibit different spatial locality when graph computing is executed on a GPU, and the same kernel shows varying spatial locality across different property arrays. Existing Cache optimization strategies in GPU architectures fail to enhance the performance of graph computing effectively. State-of-the-art Cache optimization strategies cannot implement distinct management strategies for data with different reusability, which is an essential reason for the poor performance of graph computing. To address this, the AB-Cache architecture is proposed, specifically designed for GPU platforms. AB-Cache adopts an adaptive approach that utilizes two Cache structures to optimize memory access requests with different spatial locality characteristics. An online automatic classification mechanism compatible with the AB-Cache architecture is also proposed, enabling fast classification of memory access requests with different spatial locality with minimal overhead. Comprehensive evaluations across multiple graph computing applications and a wide range of graph datasets show that the AB-Cache scheme achieves a 1.14x speedup over the baseline, demonstrating its effectiveness and practicality in optimizing graph computing performance.