Transitionary Pre-emption for GPU Context Switching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Frequent flushing of GPU hardware in graphics processing units (GPUs) for context switching in compute-intensive applications like virtual reality and gaming leads to performance degradation due to the overhead of clearing pre-existing contexts.

Innovation Solution

Implementing transitionary pre-emption in graphics processing architectures, where a second context is activated while the first context is still active, without pre-empting the first context, allowing for overlapping execution and minimizing latency by avoiding the need to wait for the first context to be fully flushed from the GPU hardware.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If frequent context switching is implemented in GPU hardware, then adaptability between different workloads is improved, but performance deteriorates due to flushing overhead

Engineering Contradiction:
Improvecontext switching capabilityVSAvoidprocessing throughput
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by pre-loading the second context into the GPU hardware before the first context is fully flushed. This allows the second context to be ready for immediate execution once the first context completes, eliminating idle waiting time and reducing the performance impact of context switching while maintaining adaptability between different workloads

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If context flushing is performed to switch between different work groups, then task versatility is improved, but latency increases due to clearing pre-existing contexts

Engineering Contradiction:
Improveworkload flexibilityVSAvoidcontext switch latency
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent reduces context switch latency by performing preliminary action - loading the second context into the GPU hardware in advance before the first context is completely flushed. This overlapping approach ensures that when context switching is required for workload flexibility, the transition time is minimized because the next context is already prepared and ready for immediate execution

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent maintains continuity of useful action by allowing the second context to be loaded and prepared while the first context is still being executed and flushed. This overlapping execution ensures that the GPU hardware remains productive throughout the context transition period, eliminating idle time and reducing the overall latency of context switching while preserving workload flexibility

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS10942740B2Transitionary pre-emption for virtual reality related contexts
Publication Date: 2021.03.09 INTEL CORP
  • US10942740B2 patent drawing
  • US10942740B2 patent drawing
  • US10942740B2 patent drawing

AI summary

Systems, apparatuses and methods may provide for technology that activates a first context on a graphics processor and detects a context switch condition with respect to the first context. Additionally, a second context may be activated, in response to the context switch condition, on the graphics processor while the first context is active on the graphics processor. In one example, activating the second context includes adding a group identifier to a plurality of threads corresponding to the second context and launching the plurality of threads with the group identifier on the graphics processor.