Distributed Memory Vertex Traversal via Independent Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In distributed memory systems, the existing methods for traversing vertices in a graph-based data structure across multiple processing elements suffer from high latency due to the need for acknowledgement messages and sequential traversal initiation, which hinders efficient computation and data access.
Innovation Solution
A communication-based approach where processing elements determine and traverse vertices independently, initiating subsequent traversals based on local computations and cached addressing schemes, reducing the need for acknowledgement messages and enabling parallel traversal of vertices.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If acknowledgement messages are used for each vertex traversal in distributed memory systems, then reliability of data access is improved, but latency increases
Solution Approach 1:
The patent extracts the acknowledgement mechanism from the critical traversal path. Instead of requiring acknowledgements for each vertex traversal, the system continues traversing vertices independently while tracking which vertices have been processed. This removes the blocking acknowledgement step from the main traversal flow, significantly reducing latency while maintaining data access reliability through alternative tracking mechanisms.
Solution Approach 2:
The patent implements preliminary action by pre-determining the traversal order of vertices before actual data access. The system identifies and queues vertices to be traversed in advance, allowing processing elements to work through the queue independently without real-time coordination. This preliminary planning enables parallel execution while ensuring all necessary vertices are covered, resolving the contradiction between reliability and latency.
2Ease of operation
If sequential traversal initiation is used across processing elements, then coordination simplicity is improved, but productivity decreases
Solution Approach 1:
The patent segments the vertex traversal task into independent units that can be distributed across multiple processing elements. Each processing element receives a subset of vertices to traverse and executes them independently based on pre-determined traversal order. This segmentation enables parallel execution across multiple elements while maintaining coordination simplicity through the predetermined traversal sequence, thus increasing productivity without complicating coordination.
Solution Approach 2:
The patent implements self-service by enabling each processing element to independently determine and execute its own traversal operations based on locally stored vertex information and pre-computed traversal orders. Processing elements do not need to wait for or coordinate with each other during traversal execution, as each element autonomously processes its assigned vertices. This self-service approach dramatically increases productivity while keeping coordination mechanisms simple.
3Reliability
If processing elements wait for acknowledgements before initiating next traversal, then data consistency is improved, but speed decreases
Solution Approach 1:
The patent ensures continuity of useful action by allowing processing elements to continuously traverse vertices without interruption for acknowledgements. The system maintains data consistency through alternative mechanisms such as pre-determined traversal orders and vertex tracking, rather than relying on blocking acknowledgements. This continuous execution significantly increases traversal speed while preserving data consistency through the structured approach to vertex processing.
Data Source
AI summary
Briefly, example methods, apparatuses, and/or articles of manufacture are disclosed that may be implemented, in whole or in part, using one or more mobile communication devices and/or processing devices to facilitate and/or support one or more operations and/or techniques for executing distributed memory operations. In particular, some embodiments are directed to techniques for the traversal of vertices of a data structure maintained in a distributed memory system.


