Value Cache Mechanism for Eliminating Redundant Calculations

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing value reuse techniques in graphics processing systems face inefficiencies due to overheads in detecting redundant calculations and memory operations, which can increase electrical power consumption and reduce performance.

Innovation Solution

The introduction of new machine-level instructions for value cache management, a special purpose functional unit for value reuse operations, and dynamic reactivation/deactivation of the value cache mechanism, along with enhanced storage area functionalities to optimize instruction execution and reduce redundant calculations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If value reuse techniques are implemented to eliminate redundant calculations, then productivity is improved, but device complexity increases due to overhead in detecting redundant operations

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

A dedicated value cache functional unit is introduced as an intermediary component between the execution unit and memory system. This functional unit includes a value cache storage area that automatically stores and retrieves previously calculated values, eliminating the need for complex detection logic in the main processor while still achieving redundancy elimination.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The value cache functional unit operates autonomously to detect and eliminate redundant calculations without requiring complex control logic in the main processor. The unit self-manages storing calculated values and comparing them against new calculation requests, thereby simplifying the overall system architecture while maintaining productivity benefits.

Inventive Principle:
Principle #25Self-service

2Use of energy by moving object

If value cache operations are performed to eliminate redundant memory operations, then use of energy is reduced, but device complexity increases due to overhead in managing the cache

Engineering Contradiction:
Improveelectrical power consumptionVSAvoidcache management complexity
Core Design Contradiction:
Use of energy by moving objectVSDevice complexity

Solution Approach 1:

The value cache functional unit serves as an intermediary that handles all cache management operations independently. It includes dedicated circuitry for storing values in the cache memory and comparing new calculations against cached values, thereby reducing the energy burden on the main processor while keeping cache management logic isolated and manageable.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system is segmented into distinct functional components: the main processor for executing instructions, and a separate value cache functional unit for handling redundancy elimination. This segmentation allows the energy-intensive cache management tasks to be performed by specialized low-power circuitry rather than the main high-power processor.

Inventive Principle:
Principle #1Segmentation

3Productivity

If a dedicated storage area is added for value caching, then productivity is improved by eliminating redundant operations, but device complexity increases due to additional hardware components

Engineering Contradiction:
Improvecalculation efficiencyVSAvoidhardware complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The value cache functional unit is merged with the existing memory system architecture. The cache storage area is integrated into the graphics processing unit's memory hierarchy, sharing physical infrastructure with other memory components. This merging approach allows productivity improvement through redundancy elimination while minimizing the increase in hardware complexity by utilizing existing system resources.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS9110814B2Device and method for eliminating complex operations in processing systems based on caching
Publication Date: 2015.08.18 THINK SILICON
  • US9110814B2 patent drawing
  • US9110814B2 patent drawing
  • US9110814B2 patent drawing

AI summary

The technology described in this application relates generally to computing processing systems and more specifically relates to systems that process data with resource intensive operations. Method and apparatus to lower the power consumption of the resource intensive operations are disclosed. Code analysis methods and run-time apparatus are presented that may eliminate the redundant operations (either complex calculations, memory fetches, or both). The techniques presented in this application are driven by special instructions inserted in the software code of the executing computer programs during the code generation process. Code analysis methods to insert the special instructions into the appropriate points in the source code of the target executing computer programs are presented. Run-time hardware mechanisms to support the potential elimination of redundant operations are also presented. Corresponding methods that might increase the number of eliminated operations by allowing limited errors to occur are also disclosed.