Linearized Tree Subtree Range Determination

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current methods lack an efficient way to determine the memory address range of a subtree within a linearized tree of objects, especially after modifications, which is crucial for multiobject garbage collection and requires significant processing overhead or extra storage.

Innovation Solution

A method that traverses the linearized tree in reverse order, checks for modifications, and uses cached results to efficiently determine the end of a subtree, reducing processing time and overhead by avoiding unnecessary traversals and storage of sibling addresses.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional methods are used to determine subtree address range in a modified linearized tree, then accuracy can be maintained, but processing time and computational overhead increase significantly

Engineering Contradiction:
Improvesubtree address range accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent stores the right sibling address of each node during the linearization process, before any modifications occur. This preliminary storage of metadata allows the system to quickly determine subtree boundaries later without performing complex traversals or calculations on modified trees, thus maintaining accuracy while reducing processing time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates a copy of the right sibling address information and stores it in a separate metadata structure. This copy can be queried independently without affecting the original linearized tree, enabling fast subtree range determination even when the tree is modified, thus resolving the contradiction between maintaining accuracy and reducing processing time.

Inventive Principle:
Principle #26Copying

2Loss of time

If right sibling addresses are stored for every node to enable fast subtree range determination, then processing time is reduced, but memory usage increases

Engineering Contradiction:
Improveprocessing timeVSAvoidmemory usage
Core Design Contradiction:
Loss of timeVSQuantity of substance

Solution Approach 1:

The patent stores right sibling address information locally at each node position within the linearized tree structure. This localized storage allows the system to access only the specific metadata needed for a given subtree query, rather than storing or processing entire tree structures, thus reducing overall memory usage while maintaining fast processing.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent divides the tree metadata into discrete units (right sibling addresses stored at each node position). This segmentation allows the system to store minimal information at each location and reconstruct subtree boundaries on-demand, reducing total memory requirements compared to storing complete subtree metadata for every node.

Inventive Principle:
Principle #1Segmentation

3Adaptability or versatility

If the linearized tree structure is modified to allow dynamic updates, then adaptability improves, but determining original subtree ranges becomes more difficult

Engineering Contradiction:
Improvedynamic update capabilityVSAvoidsubtree range determination complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces right sibling address metadata as an intermediary layer between the linearized tree structure and the subtree range determination process. This intermediary stores the structural information needed to identify subtree boundaries, allowing the tree to be modified dynamically while the metadata preserves the original structural relationships for accurate range determination.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent captures and stores the right sibling address information during the initial linearization process, before any dynamic modifications occur. This preliminary action preserves the original tree structure information in the metadata, enabling accurate subtree range determination even as the tree undergoes subsequent modifications, thus reducing the complexity of tracking changes.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7987214B2Determining the address range of a subtree of a linearized tree
Publication Date: 2011.07.26 POSTQ IPR OY
  • US7987214B2 patent drawing
  • US7987214B2 patent drawing
  • US7987214B2 patent drawing

AI summary

A method and computer system for determining the memory address range of a subtree of a linearized tree of objects or the original version of such tree when the tree has been modified or is concurrently being modified by other threads. The primary application of the method is in garbage collection for multiprocessor shared memory computers with very large memories, but it is also relevant for a number of other applications.