GPU Graph Sampling Acceleration via Alias Method
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing graph sampling and random walk methods are inefficient and time-consuming, leading to high computing complexity, low execution efficiency, and long runtime, which severely limits their performance and hardware utilization, especially in latency-critical AIoT applications.
Innovation Solution
A GPU-based system for accelerating graph sampling and random walk using the alias method, which converts graph data into CSR format, employs a load balancing strategy to allocate tasks across variable-size thread groups, and operates in online and offline modes to efficiently generate and utilize alias tables for sampling and random walks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If the alias method is used for biased graph sampling and random walk, then sampling accuracy is improved, but computing complexity increases and execution efficiency decreases
Solution Approach 1:
The patent segments the alias table construction and sampling process into distinct phases: pre-processing phase for building the alias table with sorted probability arrays, and sampling phase for efficient neighbor selection. This segmentation allows complex probability calculations to be performed once during pre-processing, while sampling operations become simple lookups and comparisons, reducing overall computing complexity during actual graph processing.
Solution Approach 2:
The patent performs preliminary action by pre-computing and storing the alias table with sorted probability arrays and corresponding neighbor mappings before actual sampling operations. This pre-processing step transforms the complex probability calculation problem into a simpler data structure that enables fast sampling, effectively moving computational burden from the sampling phase to the setup phase.
2Productivity
If the alias method is parallelized on GPU, then execution efficiency is improved, but device complexity and implementation difficulty increase
Solution Approach 1:
The patent transitions from sequential CPU-based alias method implementation to parallel GPU-based execution, adding the dimension of massive parallelism. By mapping each vertex sampling task to independent GPU threads and organizing alias table data in a GPU-friendly format, the patent achieves significant speedup while managing implementation complexity through systematic parallelization strategies.
Solution Approach 2:
The patent employs dynamic parallelization by creating GPU kernels that can handle variable numbers of vertices and adaptive thread block configurations. The implementation dynamically adjusts to different graph sizes and sampling requirements, allowing efficient utilization of GPU resources while maintaining manageable code complexity through flexible kernel designs.
3Measurement precision
If graph sampling is performed on large graphs, then sampling accuracy is improved, but processing time increases significantly
Solution Approach 1:
The patent replaces the traditional mechanical sequential processing system with a parallel computational system based on GPU architecture. By substituting CPU-based sequential alias method execution with GPU-based parallel execution, the patent achieves linear or near-linear speedup with the number of processing units, dramatically reducing processing time for large graphs while maintaining sampling accuracy.
4Reliability
If biased graph sampling is implemented with transition probability calculation, then sampling quality is improved, but computing complexity and runtime increase
Solution Approach 1:
The patent uses copying by creating and storing pre-computed alias tables that contain sorted probability arrays and corresponding neighbor mappings. Instead of recalculating transition probabilities during sampling, the system copies and utilizes the pre-established alias structure, transforming complex probability calculations into simple data retrieval operations that maintain sampling quality while reducing computational complexity.
Data Source
AI summary
A graph sampling and random walk acceleration method and system based on GPU. The graph data is read from the storage medium through the CPU and converted into CSR format and then output to the GPU. The GPU works based on the defined working mode: Real-time generation of alias table and sampling; or offline judgment whether there is a pre-generated alias table and sampling, which executes the alias method efficiently and in parallel, and can significantly improve the performance of graph data processing on the same hardware platform, including improving the sampling throughput and reducing the overall running time.


