GARDEN: Efficient GPU-Accelerated Billion-Scale GNN Training via Caching-Sampling-Batching Co-Design
Analyze & explore related research in Conceptio
Connect this record directly into your research workflow or AI agent. Explore citations across open repositories, query full text, and export structured proof bundles.
JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2021
1
GARDEN: Efficient GPU-Accelerated Billion-Scale GNN Training via Caching-Sampling-Batching Co-Design
arXiv:2611.11043v1 [cs.DC] 8 Nov 2026
Qingrui Zhu , Lei Liu , Yushu Cai , Kai Sheng , Zhiwen Chen , Member, IEEE,, Xin He
Abstract—Graph Neural Networks (GNNs) have shown impressive performance in diverse tasks such as social network analysis and recommendation systems. However, scaling their training to billion-edge graphs is hindered by the memory wall: GPU memory capacity falls short of the massive storage requirements for node features and topology. Sampling-based GNN training frameworks mitigate this by streaming subgraphs from CPU to GPU, but they incur prohibitive PCIe data transfers and non-coalesced memory accesses, resulting in bandwidth underutilization and low compute efficiency. We propose GARDEN, a GPU-accelerated sampling-based system that co-designs caching, sampling, and batching to eliminate these bottlenecks. GARDEN introduces three key innovations: (1) an Adaptive High-Fidelity Cache Allocator (AHFCA) that combines offline reuse profiling and online hotness tracking to dynamically cache features and adjacency lists within a fixed GPU memory budget, avoiding static allocation waste; (2) a Grouping-based Parallel Sampler that reorders stochastic neighborhood accesses(GPS) to maximize warp occupancy and hide latency on power-law graphs; and (3) a Super-batch Degree Classifier(SDC) that fuses mini-batches into degree-homogeneous groups, enabling cache-friendly coalesced transfers and high GPU utilization. Evaluations on real-world billion-scale graphs demonstrate that GARDEN achieves 4.54×, 1.27×, and 2.97× end-to-end training speedups over DGL-UVA, DUCATI, and FastGL, respectively, while maintaining model convergence and accuracy. Index Terms—Graph Neural Networks, GPU Acceleration, Sampling-based GNN Training, adaptive caching, neighborhood sampling
I. I NTRODUCTION
G
Neural Networks (GNNs) [1] have emerged as a powerful tool for learning representations on graphstructured data, achieving state-of-the-art performance in diverse domains such as social network analysis [2], recommendation systems [3], and molecular property prediction [4]. However, scaling GNN training to real-world graphs with billions of edges (e.g., citation networks like Papers100M (PA) [5], containing over 100 million nodes and 1.6 billion edges) poses a fundamental memory wall challenge. For instance, the Papers100M dataset requires hundreds of gigabytes for feature storage alone, far surpassing the limited capacity of GPU memory [6]–[9]. This makes full-graph training [10] RAPH
Corresponding author: Xin He. Qingrui Zhu, Lei Liu, Yushu Cai, Kai Sheng, and Xin He are with the Guangzhou Institute of Technology, Xidian University, Guangzhou 510530, China (e-mail: zhuqingrui@stu.xidian.edu.cn; liulei2303@stu.xidian.edu.cn; yushucai@stu.xidian.edu.cn; kaisheng@xidian.edu.cn; hexin@xidian.edu.cn). Zhiwen Chen is with the School of Computer Science, Xiangtan University, Xiangtan 411105, China (e-mail: zhiwenchen@xtu.edu.cn).
approaches impractical due to prohibitive memory footprints and CPU-GPU communication bottlenecks. To bridge this gap, sampling-based GNN training has become a predominant paradigm, where subgraphs are sampled from the full graph and processed in mini-batches on GPUs [11], [12]. In practice, sampling-based pipelines typically adopt a CPU-GPU heterogeneous setup: the CPU hosts the entire graph topology and node features, while the GPU handles forward and backward propagation. Each training iteration involves three stages: (1) sampling a subgraph on the host, (2) transferring the sampled topology and features to the GPU via PCIe (the memory I/O phase), and (3) executing GNN computations on the GPU. While this sampling-based approach enables training on massive graphs, it introduces two critical system bottlenecks, particularly for billion-scale graph scenarios. First, frequent large-scale data transfers between host and device incur high I/O costs. Second, the sampling process itself involves irregular memory accesses and complex logic, leading to substantial latency on graphs with power-law degree distributions [13]. These bottlenecks are exacerbated in irregular topologies, where random accesses dominate and constrain overall training throughput. Existing efforts attempt to mitigate these overheads but fail to address them holistically. Early GPU-side caching systems like GNNLab [6] and FastGL [14] rely on single-tier caching (storing only features), neglecting the structural data required for sampling. While recent dual-cache designs like DUCATI [8] co-cache features and topology, they suffer from static allocation inefficiencies and low-fidelity profiling. They allocate GPU memory based on offline heuristics that do not account for the diminishing returns of cache size or dynamic hotness shifts during training. Furthermore, these systems’ sampling kernels use generic thread scheduling that is illsuited to the skewed degree distributions of real-world graphs, causing load imbalance and underutilized memory bandwidth. To overcome these bottlenecks, we propose GARDEN, a GPU-accelerated sampling-based system that co-designs caching, sampling, and batching for efficient billion-scale GNN training. GARDEN introduces three key innovations: (1) an Adaptive High-Fidelity Cache Allocator (AHFCA) that integrates offline reuse profiling with online hotness tracking to dynamically manage GPU memory under fixed budgets, thereby mitigating inefficiencies from static allocation; (2) a Grouping-based Parallel Sampler that reorders stochastic neighborhood accesses to improve warp occupancy and hide memory latency on graphs with skewed degree distributions;
JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2021
and (3) a Super-batch Degree Classifier that fuses mini-batches into degree-homogeneous groups to enable cache-efficient data transfers and maximize GPU utilization. We implement GARDEN as an end-to-end framework and evaluate it on billion-scale real-world datasets including Papers100M and IGB-large. Our evaluation demonstrates that GARDEN effectively overcomes the memory wall and compute irregularity of billion-scale GNNs, enabling practical, high-throughput training of billion-edge GNNs on a single multi-GPU node. In summary, this paper makes the following contributions: We propose the Adaptive High-Fidelity Cache Allocator, a dynamic memory management strategy that integrates end-to-end access statistics with runtime adaptation to maximize cache hits under strict memory budgets. • We design a Grouping-based Parallel Sampler that optimizes thread scheduling for stochastic sampling, significantly reducing warp divergence and increasing computational throughput on skewed graphs. • We develop a Super-batch Degree Classifier that reorganizes training batches to exploit data locality, enhancing both PCIe transfer efficiency and GPU core utilization. • We build GARDEN, an end-to-end framework integrating these techniques. Our extensive evaluation on billionscale real-world datasets show that GARDEN achieves speedups of 4.54× over DGL-UVA [15], 1.27× over DUCATI [8], and 2.97× over FastGL [14], respectively, while maintaining model accuracy.
2
seed nodes
layer0 nodes
layer1 nodes
Message aggregation (Src to Dst) Neighbor sampling (Dst to Src)
output nodes
Layer0: 1:Src nodes
1:Dst nodes
Layer1:
Layer2:
2:Src nodes
input nodes
2:Dst nodes
2:Src nodes
•
II. BACKGROUND A. Graph Neural Networks Graph Neural Networks (GNNs) are deep learning models that operate on graph-structured data, capable of end-to-end learning for tasks including node classification, link prediction, and graph-level regression. Formally, let G = (V, E) be a graph with node set V (|V| nodes) and edge set E ⊆ V × V (|E| edges). Each node v ∈ V is associated with an initial feature vector xv ∈ Rd0 that encodes domain information, where d0 is the dimensionality of the input node features. GNNs employ an iterative message-passing scheme across K layers. At each layer k, a node u aggregates information from its neighborhood N (u) = {v | (v, u) ∈ E} using a differentiable message function ϕ(k) (·): (k)
mu
= AGGREGATE(k)
o n (k−1) (k−1) ϕ(k) hv , hu | v ∈ N (u) (1)
(k−1)
where hu is the hidden state of u from the previous layer, and AGGREGATE is a permutation-invariant function such as sum, mean, or max. The node then updates its representation by combining its previous state with the aggregated message: (k) h(k) h(k−1) , m(k) (2) u = U PDATE u u where U PDATE(k) (·) is typically a learnable function such as (K) an MLP or GRU. After K layers, each node’s embedding hu captures both topological information and feature content from its K-hop neighborhood, enabling effective graph reasoning.
Fig. 1. Sampling-based GNN training framework with a per-layer fanout of [2,2]. Each layer-wise block connects source (src) nodes to destination (dst) nodes.
B. Sampling-based GNN Training with Caching Training GNNs on large-scale graphs is challenging because the number of involved neighbors grows rapidly with model depth, making full-neighbor aggregation memory-intensive and impractical for billion-edge graphs. Sampling-based training addresses this problem by selecting a fixed number of neighbors at each layer, thereby bounding the size of the computation graph and enabling memory-efficient mini-batch training. As illustrated in Figure 1, neighbor sampling begins with a set of seed nodes V0 at Layer 0 and recursively expands toward the outer layers according to the specified fanouts. At sampling layer ℓ, the node set Vℓ−1 serves as the Destination (Dst) set, whose representations are the aggregation targets of that layer. The sampled neighbors are then added to form the corresponding Source (Src) set, Vℓ = Vℓ−1 ∪ Nℓ (Vℓ−1 ). Therefore, Src and Dst denote layer-specific roles rather than disjoint node categories, and the Dst set of each layer is contained in its corresponding Src set. The two endpoint sets play different roles in sampling-based training. The seed set V0 is the output-node set, because the model produces final representations and evaluates predictions and losses for these nodes. In contrast, Vk , obtained after k sampling layers, is the input-node set, because the raw features of all nodes in this complete Src set must be fetched before GNN computation. Consequently, neighbor sampling expands from the output nodes at Layer 0 to the input nodes at Layer k, whereas message aggregation proceeds in the reverse direction, from the input nodes through the intermediate layers to the output nodes. From a system’s viewpoint, recursive sampling converts irregular propagation into sparse, localized operations, facilitating asynchronous fetching and dynamic scheduling. However, implementations vary in efficiency. PyTorch Geometric (PyG) [16] relies on CPU sampling, limiting scalability for massive graphs. DGL accelerates sampling on GPUs but incurs overhead from synchronization and host-device transfers. Many frameworks also suffer from low cache hit rates due to graph irregularity, exacerbating bottlenecks. Single-featurecache systems such as PaGraph [17], Data Tiering [18], AliGraph [19], and GNNLab [6] cache node features to reduce
JOURNAL OF LATEX CLASS FILES, VOL. 14, NO. 8, AUGUST 2021
data transfers but overlook adjacency structures, constraining performance for large subgraphs. FastGL employs singlecache optimization and reduces synchronization but introduces online overhead and fails to handle random accesses effectively. Dual-cache systems like DUCATI and DCI [20] improve on this by separately caching features and adjacency, better suiting divergent access patterns. Yet, their static allocation and coarse profiling limit adaptability to dynamic workloads, often leading to inefficiencies in billion-scale scenarios. GNNBoost [21] introduces a cost-model-driven cache allocation framework for jointly optimizing topology and feature caching, but it suffers from several limitations. Its additional RNGS cache competes for limited GPU memory and its sampling strategy fails to hide random access latency, leaving significant I/O bottlenecks. Moreover, its reliance on offline models limits adaptability to dynamic workload changes. This highlights the need for more adaptive caching and sampling mechanisms.
3
the system design, whereas a × indicates that it is not included in the stated design scope. GARDEN’s main design distinction is the integration of these capabilities in one end-to-end framework. Full-link offline profiling and Dual-Cache organization preserve stable global reuse, while the bounded Dynamic-Cache compensates for recently recurring residual hot nodes missed by the static cache. GARDEN further couples cache management with sampling and batching through GPS and SDC, connecting cache decisions with execution organization. Among the listed systems, GARDEN is the only framework covering all five design dimensions. Table I summarizes this capability coverage and clarifies the design scope rather than providing a direct performance ranking. TABLE I C APABILITY- ORIENTED COMPARISON OF CACHE ORGANIZATION AND SYSTEM CO - DESIGN .
Host Memory Full Graph Adjacdency
Work
Full Node Features
Cache miss(use UVA)
Cache miss(use UVA)
GPU Memory
Allocate Dual-Cache
Adj-Cache
Nfeat-Cache
(Graph Structure)
(Graph Structure)
Use Adj-Cache
Use Nfeat-Cache ... ... ...
Offline Cache Preprocessing seed nodes
subgraph
Adj-Sampling
subgraph
Training Computation
features
Nfeat-Selecting
Fig. 2. Architecture of the dual-cache GNN training system, coordinating feature and adjacency caches for efficient sampling.
Next, we outline the Dual-Cache System (DCS) pipeline, as shown in Figure 2. DCS comprises three stages. In offline preprocessing, it profiles access frequencies for adjacency lists and features, computes utility as frequency divided by size, and greedily populates Adj-Cache and Nfeat-Cache under GPU memory constraints. During training, Adj-Sampling queries Adj-Cache for lists, falling back to Unified Virtual Addressing (UVA) [22]for host misses in Compressed Sparse Column (CSC) format, enabling low-latency sampling despite irregularity. Nfeat-Selecting follows suit for features, using pinned host memory on misses, with dense storage for bandwidth efficiency. DCS decouples caching for Adj-Sampling (latencybound due to sparse pointer-chasing) and Nfeat-Selecting (bandwidth-bound from contiguous reads), avoiding singlecache trade-offs and improving throughput and utilization. C. Capability-Oriented Comparison Table I summarizes explicit design capabilities rather than measured performance. The comparison covers offline profiling, Dual-Cache organization, recent residual adaptation, sampling co-design, and batching co-design. A ✓ indicates that the corresponding capability is explicitly incorporated into
GNNLab [6] DUCATI [8] FastGL [14] GNNBoost [21] GARDEN
Offline profile
DualCache
Recent residual adapt.
✓ ✓ ✓ ✓ ✓
× ✓ × ✓ ✓
× × × × ✓
Sampling Batching co-design co-design × ✓ ✓ ✓ ✓
× × × × ✓
III. M OTIVATION To understand the fundamental bottlenecks in billion-scale GNN training, we conduct a series of micro-benchmarks on state-of-the-art frameworks (DGL [23], DUCATI [8], and FastGL [14]) using massive datasets such as Papers100M [5], IGB-large [24] and UK-2006-05 [25]. Our analysis reveals two primary systemic inefficiencies suffered by existing approaches. A. The Static Cache Dilemma: Mismatched Allocation and Diminishing Returns GNN training on billion-scale graphs demands efficient data management to handle massive node features and irregular graph structures. Existing caching strategies, however, fall short in adapting to diverse sampling algorithms and dynamic workloads. Single-cache systems, such as GNNLab and FastGL, typically cache only node features, neglecting graph topology like adjacency lists. This leads to high overhead in the sampling phase, where repeated CPU-GPU transfers dominate runtime.These single-cache approaches also underutilize GPU memory, often leaving several gigabytes of VRAM idle due to their static handling of GNN workloads. Dualcaching mechanisms, like DUCATI, co-cache node features and adjacency lists to improve data reuse and reduce I/O. Yet, even these systems struggle with billion-scale graphs, as static caching of node features mismatches on-demand training needs. As shown in Figure 3, the Nfeat-selecting phase emerges as a dominant bottleneck in systems like FastGL and DUCATI across benchmarks such as Papers100M, IGB-large, and UK, consuming a substantial fraction (e.g., on average 50%) of total