Intelligent Resource Provisioning for GPU Shadow Structures

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional shadow page table technology is inefficient for virtualizing GPU memory access due to sparse shadow data, bi-directional data synchronization, and large graphics memory requirements, particularly in scenarios where multiple virtual machines share a physical GPU.

Innovation Solution

The Intelligent Resource Provisioning for Shadow Structures (IRPSS) method, which includes Automatic Address Space Sharing (AASS) and partial shadowing, optimizes shadow resource utilization by reserving static shadow slots and dynamically switching GTT entries, and only creates shadow copies for sensitive fields, reducing system memory usage and synchronization overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If traditional shadow page table technology is used for GPU memory virtualization, then multiple virtual machines can share a physical GPU, but system memory usage and synchronization overhead increase significantly

Engineering Contradiction:
ImproveGPU sharing capabilityVSAvoidsystem memory usage
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent extracts only the essential shadow data fields that require synchronization (e.g., valid bit, dirty bit, protection bits) while leaving non-critical fields in the guest page tables. This selective extraction reduces the amount of shadow data stored in system memory while maintaining the necessary virtualization functionality for GPU sharing.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies different quality levels to different fields of the page table entries. Critical fields that affect memory access security and correctness are fully synchronized and shadowed, while non-critical fields are left unsynchronized. This local differentiation optimizes memory usage by focusing synchronization resources only where necessary.

Inventive Principle:
Principle #3Local quality

2Reliability

If full shadow page tables are implemented for GPU virtualization, then memory access security is improved, but synchronization overhead increases due to bi-directional data synchronization

Engineering Contradiction:
Improvememory access securityVSAvoidsynchronization overhead
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent extracts only the essential shadow data fields that require synchronization (e.g., valid bit, dirty bit, protection bits) while leaving non-critical fields in the guest page tables. This selective extraction reduces the amount of shadow data stored in system memory while maintaining the necessary virtualization functionality for GPU sharing.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Instead of implementing full bi-directional synchronization for all page table fields, the patent applies partial synchronization only to critical fields that affect memory access security. This partial action approach reduces synchronization overhead while maintaining sufficient security for GPU virtualization.

Inventive Principle:
Principle #16Partial or excessive action

3Adaptability or versatility

If shadow page tables are used to support multiple VMs sharing GPU memory, then virtualization capability is improved, but performance deteriorates due to large graphics memory requirements

Engineering Contradiction:
Improvemulti-VM supportVSAvoidGPU processing performance
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent extracts only the essential shadow data fields that require synchronization (e.g., valid bit, dirty bit, protection bits) while leaving non-critical fields in the guest page tables. This selective extraction reduces the amount of shadow data stored in system memory while maintaining the necessary virtualization functionality for GPU sharing.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Instead of implementing full bi-directional synchronization for all page table fields, the patent applies partial synchronization only to critical fields that affect memory access security. This partial action approach reduces synchronization overhead while maintaining sufficient security for GPU virtualization.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10482567B2Apparatus and method for intelligent resource provisioning for shadow structures
Publication Date: 2019.11.19 INTEL CORP
  • US10482567B2 patent drawing
  • US10482567B2 patent drawing
  • US10482567B2 patent drawing

AI summary

An apparatus and method are described for intelligent resource provisioning for shadow structures. For example, one embodiment of an apparatus comprises: graphics processing unit (GPU) to process graphics commands and responsively render a plurality of image frames in a graphics memory address space; shadow structure management logic to reserve one or more shadow slots in the graphics memory address space in which to store shadow instances of different GPU contexts; and the shadow structure management logic to implement a partial shadowing policy for shadowing GPU contexts in the shadow slots, the partial shadowing policy based on characteristics of pages of the GPU contexts.