Parallel Graph Search via Structured Duplicate Detection
Find Innovative SolutionsGenerate 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
Engineering 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
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.
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
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.
Data Source
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.


