GNN SM Scheduling for Vertex-Centric Massive Graph Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing graph neural network (GNN) frameworks suffer from inefficient memory and cache management, static kernel scheduling, and high preprocessing latency, limiting their scalability and performance in processing massive graphs.

Innovation Solution

Implement a destination-vertex-centric streaming multiprocessor (SM) with feature-wise thread scheduling, dynamic kernel placement using a cost model, and preprocessing task division into subtasks for parallel execution to reduce runtime and memory usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If edge-centric operations are used for node aggregation in GNN frameworks, then graph processing capability is improved, but lock and synchronization overhead increases significantly degrading overall performance

Engineering Contradiction:
Improvegraph processing capabilityVSAvoidlock and synchronization overhead
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent inverts the traditional edge-centric aggregation approach by implementing destination-vertex-centric computation. Instead of iterating through edges to aggregate node features, the system iterates through destination vertices and processes their incoming edges, eliminating the need for locks and synchronization while maintaining graph processing capability

Inventive Principle:
Principle #13The other way round (Inversion)

Solution Approach 2:

The patent segments the graph processing workload by allocating different destination vertices to different streaming multiprocessors (SMs). This segmentation allows parallel processing of vertex aggregations without requiring synchronization between threads, as each SM independently processes its assigned vertices

Inventive Principle:
Principle #1Segmentation

2Loss of time

If vertex-centric operations are applied to GNN computing, then lock overhead is reduced, but memory and cache management becomes inefficient limiting parallel data processing scalability

Engineering Contradiction:
Improvelock overheadVSAvoidparallel data processing scalability
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent applies local quality by optimizing memory access patterns for each destination vertex processed by an SM. The system loads only the necessary neighbor vertex embeddings and edge features into local memory for each vertex, minimizing cache usage while maintaining efficient parallel processing scalability

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent changes the dimensionality of parallel processing by organizing computation around destination vertices rather than edges or source vertices. This dimensional shift in the computation graph allows for more efficient memory access patterns and better utilization of GPU memory hierarchy, improving parallel processing scalability

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Ease of manufacture

If static kernel scheduling is used for embedding aggregation, then implementation simplicity is maintained, but dimensionality reduction opportunities are missed increasing computation and memory requirements

Engineering Contradiction:
Improveimplementation simplicityVSAvoidcomputation and memory requirements
Core Design Contradiction:
Ease of manufactureVSProductivity

Solution Approach 1:

The patent implements dynamic kernel scheduling that adapts to the dimensionality of input embeddings. The system automatically selects aggregation kernels optimized for different embedding dimensions, enabling dimensionality reduction while maintaining implementation simplicity through automated kernel selection rather than manual configuration

Inventive Principle:
Principle #15Dynamics

4Loss of energy

If GNN preprocessing is performed sequentially, then resource consumption is reduced, but latency increases significantly accounting for 81.7% of total processing time

Engineering Contradiction:
Improveresource consumptionVSAvoidpreprocessing latency
Core Design Contradiction:
Loss of energyVSLoss of time

Solution Approach 1:

The patent enables continuous useful action by overlapping preprocessing operations with GNN computation. The system performs preprocessing tasks such as embedding lookup and feature extraction in parallel with the main GNN computation pipeline, eliminating idle time and reducing overall latency without significantly increasing resource consumption

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The patent performs preliminary actions by pre-computing and caching vertex embeddings and graph features before the main GNN computation. This preliminary preprocessing reduces the computational burden during the main processing phase, lowering latency while keeping resource consumption manageable through efficient caching

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12632302B2Method and apparatus for GNN-acceleration for efficient parallel processing of massive datasets
Publication Date: 2026.05.19 KOREA ADVANCED INST OF SCI & TECH
  • US12632302B2 patent drawing
  • US12632302B2 patent drawing
  • US12632302B2 patent drawing

AI summary

Provided is an apparatus including a streaming multiprocess scheduler and a computation unit, wherein the streaming multiprocess scheduler obtains a subgraph and an embedding table per layer, determines a number of SMs to be allocated for processing embeddings of a destination-vertex based on a feature dimension and a maximum number of threads in each of the SMs, and allocates the determined number of SMs to each of all destination-vertices included in the subgraph, and the computation unit obtains, by each of the SMs, embeddings of a destination-vertex allocated to each SM, obtains, by each SM, embeddings of at least one or more neighbor-vertices of the destination-vertex using the subgraph, and performs, by each SM, a user-designated operation using the embeddings of the destination-vertex and the embeddings of the neighbor-vertices.