Parallel Graph Search via Structured Duplicate Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing parallel graph search algorithms face challenges in efficiently handling duplicate nodes across multiple processing units due to high communication and synchronization overhead, particularly when dealing with graphs that have complex structures and many duplicate paths, leading to less efficient memory usage and increased overhead.

Innovation Solution

The implementation of parallel structured duplicate detection (PSDD) partitions the graph into independent regions using a state-space abstraction, allowing processors to maintain disjoint duplicate-detection scopes and reduce synchronization operations, thereby enabling efficient parallelization by localizing memory references and minimizing communication overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional parallel graph search algorithms are used to expand nodes across multiple processing units, then search speed is improved, but communication and synchronization overhead increases significantly

Engineering Contradiction:
Improvesearch speedVSAvoidcommunication and synchronization overhead
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent partitions the graph into multiple independent regions using a state-space abstraction, allowing each processing unit to work on a specific region without requiring frequent communication. This segmentation enables parallel expansion of nodes across different regions while minimizing synchronization overhead, as each processor can independently manage its assigned region's node expansion and duplicate detection.

Inventive Principle:
Principle #1Segmentation

2Quantity of substance

If global Open and Closed lists are distributed across different processors to enable parallel search, then memory scalability is improved, but communication overhead increases due to node generation across processor boundaries

Engineering Contradiction:
Improvememory scalabilityVSAvoidcommunication overhead
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent implements local duplicate detection within each processor's assigned graph region, allowing processors to independently manage their local Open and Closed lists without requiring constant communication for duplicate checking. Each processor maintains quality control for its local region while the state-space abstraction ensures that local decisions don't conflict with global search integrity, thus improving memory scalability without proportionally increasing communication overhead.

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS7805454B2System and method for parallel graph search utilizing parallel structured duplicate detection
Publication Date: 2010.09.28 XEROX CORP
  • US7805454B2 patent drawing
  • US7805454B2 patent drawing
  • US7805454B2 patent drawing

AI summary

A method and system for performing a graph search, includes partitioning a graph into multiple independent regions that do not interfere with each other for a period of time. A state space abstraction is used to identify the independent regions. Then using parallel structured duplicate detection a search work load is distributed across multiple processing units to maximize an amount of time during which the independent regions are capable of being maintained independent. This allows the search of the multiple independent regions of the partitioned graph to be undertaken in parallel.