Detecting Reusable Drawing Command Groups

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for optimizing drawing commands in computer systems, such as caching, fail to recognize repeated groups of non-consecutive commands and rely on creator input, leading to inefficiencies in CPU speed and memory usage due to unnecessary caching and lack of optimization opportunities.

Innovation Solution

A method that identifies repeated drawing commands through a reuse analysis step, followed by an order analysis and group analysis to combine commands into reusable groups, replacing occurrences with a new command without altering the appearance, without requiring explicit creator input.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If caching is applied to optimize drawing commands, then processing efficiency is improved, but memory usage increases and false positives occur when caching non-reusable commands

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidmemory usage
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The system performs preliminary analysis of the drawing command sequence to identify reusable groups before execution. By analyzing the sequence structure in advance and pre-identifying reusable patterns, the system prepares optimization opportunities without immediately caching everything, thus improving efficiency while controlling memory usage.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system uses feedback mechanisms to track whether cached drawing commands are actually reused. By monitoring usage patterns and feedback from the rendering process, the system can adjust its caching strategy, clearing caches for non-reusable commands and retaining only genuinely reusable groups, thereby optimizing the balance between processing efficiency and memory consumption.

Inventive Principle:
Principle #23Feedback

2Loss of time

If individual drawing commands are analyzed for caching, then processing overhead is reduced, but reusable groups of non-consecutive commands are missed

Engineering Contradiction:
Improveprocessing overheadVSAvoidoptimization opportunities
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The system merges multiple individual drawing commands into grouped units when they form reusable patterns. By combining commands that appear together multiple times in the sequence (even if non-consecutive), the system creates larger reusable blocks that can be cached once and referenced multiple times, reducing overall processing overhead while capturing more optimization opportunities.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system transitions from analyzing single commands in one dimension to analyzing sequences and patterns across multiple dimensions. By examining the drawing command sequence structurally and identifying recurring patterns across different positions, the system detects reusable groups that span multiple commands and positions, thereby finding optimization opportunities that individual command analysis would miss.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Measurement precision

If creator input is required to mark reusable commands, then caching accuracy is improved, but system complexity and ease of operation deteriorate

Engineering Contradiction:
Improvecaching accuracyVSAvoidease of use
Core Design Contradiction:
Measurement precisionVSEase of operation

Solution Approach 1:

The system performs self-service by automatically analyzing the drawing command sequence and identifying reusable groups without requiring creator input. The analysis mechanism examines the structure and patterns in the command sequence itself, enabling the system to autonomously determine which groups are reusable, thereby maintaining high caching accuracy while eliminating the need for manual marking and improving ease of operation.

Inventive Principle:
Principle #25Self-service

4Reliability

If all drawing commands are cached to ensure completeness, then no optimization is lost, but memory consumption increases significantly

Engineering Contradiction:
Improveoptimization completenessVSAvoidmemory consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system applies partial action by caching only the portion of drawing commands that are actually reusable, rather than caching all commands. By selectively identifying and caching only the reusable groups through pattern analysis, the system achieves sufficient optimization completeness without the excessive memory consumption of universal caching, applying the principle of doing just enough rather than everything.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS20190095415A1Detecting reusable content in a sequence of drawing commands
Publication Date: 2019.03.28 SOFHA GMBH
  • US20190095415A1 patent drawing
  • US20190095415A1 patent drawing
  • US20190095415A1 patent drawing

AI summary

A method to detect reusable groups of drawing commands in a sequence of drawing commands. Drawing commands are identified by checksums. Recurring and co-occurring drawing commands are combined into groups of drawing commands. Under certain conditions such a group can be replaced by a new drawing command, making the group reusable.