Reduced Shadow Memory for GPU Command Validation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The increasing complexity of graphics processing units (GPUs) leads to a significant increase in memory required to shadow state information, which raises the cost and complexity of error-checking logic for detecting exceptions generated by illegal commands, necessitating a reduction in shadow memory size.

Innovation Solution

A graphics processing unit with validation logic and a reduced memory space shadow memory that stores a representation of state information, allowing for validation of incoming commands using a smaller memory space, thereby detecting driver software exceptions and reducing the overall memory footprint.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a full shadow memory is used to store complete state information for validating all commands, then validation accuracy is improved, but memory size and cost increase

Engineering Contradiction:
Improvevalidation accuracyVSAvoidshadow memory size
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts only the critical state variables needed for validation from the complete state information. The front end identifies a subset of state variables that are sufficient to detect driver command exceptions, storing only these in the shadow memory rather than the full state set, thereby reducing memory size while maintaining validation effectiveness

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies different levels of shadowing to different state variables based on their validation importance. Critical state variables are fully shadowed, while less critical ones use compressed or partial representations. This localized differentiation optimizes the balance between validation accuracy and memory usage

Inventive Principle:
Principle #3Local quality

2Adaptability or versatility

If GPU complexity increases to handle more commands and state variables, then functionality is improved, but shadow memory requirements increase

Engineering Contradiction:
Improvecommand handling capabilityVSAvoidshadow memory size
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent segments the command validation process into multiple stages: command parsing, state variable identification, validation checking, and exception detection. This segmentation allows the system to handle complex GPU functionality while only shadowing the specific state variables relevant to each validation stage, preventing exponential growth in shadow memory requirements

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a universal shadow memory structure that can validate multiple classes of commands using a standardized approach. The front end maps different command types to a common set of state variables, allowing the shadow memory to serve multiple validation purposes simultaneously, thereby reducing overall memory requirements despite increased GPU versatility

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS7768515B1Apparatus, system, and method for reducing shadowed state memory requirements for identifying driver command exceptions in a graphics system
Publication Date: 2010.08.03 NVIDIA CORP
  • US7768515B1 patent drawing
  • US7768515B1 patent drawing
  • US7768515B1 patent drawing

AI summary

A graphics processing unit has a reduced memory space shadow memory as a source of state information for performing validation of commands. The reduced memory space shadow memory is smaller in size than a full version of state variables associated with an abstract state machine representation of a class of commands received from a software driver. The reduced memory space shadow memory is used by validation logic to detect exceptions indicative of an illegal command or sequence of commands.