Implicit Frontiers for Graph Traversal Overhead

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional graph analysis methods using frontier-based linear algebra require maintaining a separate list of visited nodes, leading to increased computational overhead and memory usage during breadth-first searches due to redundant computations and unnecessary memory allocation.

Innovation Solution

Implementing a method where the updated frontier vector from each iteration is used to implicitly filter visited nodes, eliminating the need for a separate visited list and reducing the number of rows considered in matrix-vector multiplication, thereby minimizing computational overhead and memory usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a separate visited list is maintained to filter visited nodes during graph traversal, then redundant computations are removed, but computational overhead and memory allocation increase

Engineering Contradiction:
Improveaccuracy of graph traversalVSAvoidcomputational overhead
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent merges the frontier vector and visited list into a single data structure. The frontier vector is updated in-place to track visited nodes by setting entries to zero, eliminating the need for a separate visited list. This combination reduces memory allocation and computational overhead while maintaining accurate graph traversal.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The frontier vector serves multiple functions: it tracks the current frontier of nodes to explore, records which nodes have been visited, and filters out already-visited nodes from subsequent iterations. This multi-functionality eliminates the need for dedicated visited list structures and reduces overall system complexity.

Inventive Principle:
Principle #6Universality (Multi-functionality)

2Reliability

If a separate visited list is maintained to filter visited nodes during graph traversal, then redundant computations are removed, but memory usage increases

Engineering Contradiction:
Improveaccuracy of graph traversalVSAvoidmemory usage
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent merges the frontier vector and visited list into a single data structure. The frontier vector is updated in-place to track visited nodes by setting entries to zero, eliminating the need for a separate visited list. This combination reduces memory allocation and computational overhead while maintaining accurate graph traversal.

Inventive Principle:
Principle #5Merging (Combining)

3Reliability

If all rows of the matrix representation are processed in each iteration, then complete graph coverage is ensured, but computational overhead increases

Engineering Contradiction:
Improvecompleteness of graph traversalVSAvoidcomputational efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts and processes only the relevant subset of matrix rows corresponding to active frontier nodes. By identifying which rows have non-zero entries in the frontier vector, the algorithm processes only those rows that contribute to the current iteration's computations, eliminating redundant processing of already-visited nodes while ensuring complete graph coverage.

Inventive Principle:
Principle #2Taking out (Extraction)

4Ease of operation

If redundant computations are performed on already-visited nodes, then simpler processing logic is used, but computational overhead increases

Engineering Contradiction:
Improvesimplicity of processing logicVSAvoidcomputational efficiency
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The patent implements dynamic filtering of matrix rows based on the current state of the frontier vector. The algorithm adaptively determines which rows to process by checking the frontier vector entries, dynamically adjusting the computation scope each iteration to exclude already-visited nodes. This maintains simple processing logic while improving computational efficiency through state-dependent row selection.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20240160666A1Implicit filtering for task generation for graph analytics processes
Publication Date: 2024.05.16 ADVANCED MICRO DEVICES INC
  • US20240160666A1 patent drawing
  • US20240160666A1 patent drawing
  • US20240160666A1 patent drawing

AI summary

A system includes a processor configured to iteratively, until values of a frontier vector indicate all nodes of a graph have been discovered, select a set of rows from a matrix representation of the graph based on values of the frontier vector. The set of rows includes fewer rows than the matrix representation. The processor is further configured to calculate an output vector for a current iteration as a dot product between each of the selected set of rows in the matrix representation and the frontier vector, with the output vector for the current iteration acting as the frontier vector for a next iteration and the output vector for the next iteration initialized to the frontier vector for the current iteration.