Object Graph Memory Measurement in OO Environments
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In object-oriented programming environments, measuring memory consumption differences between objects is inefficient due to the complexity of object networks and the need to analyze structural data without knowledge of the underlying object semantics, especially in large-scale enterprise systems where frequent changes and scalability are required.
Innovation Solution
A system and method that generates a math graph structure to represent object networks, allowing for the visualization and storage of object graph data, including memory size, type, and reference information, enabling the measurement of memory consumption differences between objects without transferring actual data, using weighted values and serialization techniques.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If traditional methods are used to measure memory consumption in object-oriented environments, then measurement can be performed, but the process becomes inefficient and complex due to object network complexity
Solution Approach 1:
The patent creates a mathematical graph structure that copies and represents the object network in a simplified form. Instead of analyzing the actual complex object network directly, the system generates a mathematical model (graph) that replicates the essential structural relationships, enabling efficient measurement of memory consumption differences without dealing with the full complexity of the original object network
Solution Approach 2:
The mathematical graph structure serves as an intermediary between the complex object network and the memory measurement process. This intermediate representation allows the system to analyze memory consumption by working with the simplified graph structure rather than the original complex objects, thereby improving measurement efficiency while handling complexity
2Loss of information
If actual object data is transferred for analysis, then complete information is available, but data transfer and processing becomes inefficient
Solution Approach 1:
Instead of transferring actual object data, the patent transfers a mathematical graph representation that copies the essential structural information. This copied representation contains all necessary information about object relationships and memory consumption patterns without requiring the transfer of the actual large-scale object data, thus maintaining information completeness while reducing data transfer time
3Measurement precision
If detailed object semantics are analyzed, then precise memory measurement is achieved, but analysis complexity increases
Solution Approach 1:
The patent extracts only the essential structural information needed for memory measurement from the complex object semantics. By taking out and focusing solely on the relational structure and memory-relevant properties while ignoring unnecessary semantic details, the system achieves precise memory consumption measurement without the complexity of analyzing complete object semantics
Data Source
Figure 1a
Figure 1b
Figure 2
AI summary
A computer-implemented system and method are described for measuring the memory consumption difference between two objects in an object-oriented programming environment. For example, one embodiment of a method comprises: analyzing relationships between objects within a network of objects to determine an object network structure; generating object graph data representing the object network structure, the object graph data including nodes representing objects and arcs representing relationships between objects; removing all incoming arcs to each of two nodes; building resulting sub-graphs for each of the two nodes; summing the memory consumed by each of the subgraphs of the two nodes; and subtracting the memory amounts consumed by each of the sub-graphs to determine the memory consumption different between the two nodes.