Tree Node Pointer Segmentation for Parallel Processing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Parallel processing systems often experience blocking instances when performing change operations concurrently with traversal operations on trees, leading to inefficiencies and reduced throughput.

Innovation Solution

The implementation of a pair of pointer fields for each node in the tree, where one pointer is marked as current for traversal and the other as alternate for change operations, allows for non-blocking access, enabling concurrent performance of change and traversal operations by swapping the status of these pointers during topology changes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If change operations are performed concurrently with traversal operations on trees in parallel processing systems, then throughput and efficiency are improved, but blocking instances occur when multiple operations access the same node

Engineering Contradiction:
ImprovethroughputVSAvoidblocking instances
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The node pointer is segmented into two separate pointer fields: a current pointer field for traversal operations and an alternate pointer field for change operations. This segmentation allows traversal and change operations to access different pointer fields simultaneously, eliminating blocking instances while maintaining tree integrity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The alternate pointer field acts as an intermediary that allows change operations to modify tree topology without blocking traversal operations. By using the alternate pointer field as a temporary storage location for modified pointers, the system enables concurrent access without conflicts.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If a single pointer field is used for tree node access, then device complexity is reduced, but blocking occurs when concurrent operations need to access the same node

Engineering Contradiction:
Improveconcurrent operation capabilityVSAvoidpointer field structure
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The single pointer field is divided into two separate pointer fields (current and alternate) to enable concurrent access. This segmentation increases structural complexity slightly but dramatically improves ease of operation by allowing multiple operations to proceed simultaneously without blocking.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically switches between current and alternate pointer fields based on operation type. Traversal operations use the current pointer field while change operations use the alternate pointer field, and the roles can be swapped when needed, providing dynamic adaptability that improves concurrent operation capability.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS9588985B2Reducing blocking instances in parallel processing systems performing operations on trees
Publication Date: 2017.03.07 ORACLE INT CORP
  • US9588985B2 patent drawing
  • US9588985B2 patent drawing
  • US9588985B2 patent drawing

AI summary

An aspect of the present invention reduces blocking instances in parallel processing systems performing operations on trees. In one embodiment, a change operation is performed in a first execution entity and a traversal operation is performed in a second execution entity, with both the change operation and the traversal operation being designed to operate on a same node of a tree, and with the first execution entity and the second execution entity being executed concurrently in a digital processing system. A non-blocking access of the same node to both of the first execution entity and the second execution entity is permitted, thereby enabling the change operation and the traversal operation to be performed concurrently.