Pattern-Driven Page Table Shadowing for GPU Virtualization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current GPU virtualization technologies face challenges in achieving efficient and secure resource partitioning and isolation among virtual machines, particularly in performance-critical graphics processing, due to complexities in virtualizing sophisticated GPUs and ensuring secure access to shared resources.

Innovation Solution

The implementation of pattern-driven page table shadowing, which predicts the GPU working set and performs on-demand lazy shadow synchronization, reduces write protection faults and IOMMU page faults by selectively synchronizing only the necessary page table entries, and introduces speculative page requests to proactively allocate required pages, thereby optimizing GPU page table management.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If full GPU virtualization through trap-and-emulation is implemented, then secure isolation among virtual machines is achieved, but performance overhead increases due to write protection faults and IOMMU page faults

Engineering Contradiction:
Improvesecure isolationVSAvoidperformance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary actions by proactively allocating required pages through speculative page requests before faults occur. The lazy shadow synchronization mechanism pre-establishes page table mappings for predicted GPU working sets, preventing write protection faults and IOMMU page faults before they impact performance.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements dynamic page table management where the shadow page table is selectively synchronized based on predicted GPU working sets. The system dynamically adjusts which page table entries are synchronized lazily rather than all at once, optimizing the balance between security and performance based on actual GPU access patterns.

Inventive Principle:
Principle #15Dynamics

2Productivity

If selective lazy shadow synchronization is implemented, then performance overhead is reduced by minimizing write protection faults, but system complexity increases due to pattern-driven prediction mechanisms

Engineering Contradiction:
Improveperformance overheadVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary prediction mechanism that sits between the guest page table and shadow page table. This intermediary analyzes GPU access patterns and generates speculative page requests, acting as a mediator that simplifies the synchronization process by predicting which pages need to be synchronized rather than managing all pages manually.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system uses copying by creating shadow page table entries that mirror the guest page table structure. Instead of directly modifying complex page table structures, the patent copies necessary mappings to the shadow page table in a simplified form, reducing the complexity of synchronization operations while maintaining security.

Inventive Principle:
Principle #26Copying

3Loss of time

If speculative page requests are used to proactively allocate pages, then page fault reduction is achieved, but memory resource consumption increases

Engineering Contradiction:
Improvepage fault reductionVSAvoidmemory resource consumption
Core Design Contradiction:
Loss of timeVSQuantity of substance

Solution Approach 1:

The patent applies partial action by generating speculative page requests for only the predicted GPU working set rather than pre-allocating all possible pages. This selective approach proactively allocates memory for pages that are actually needed based on access patterns, reducing page faults while avoiding excessive memory consumption for unused pages.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS10853118B2Apparatus and method for pattern-driven page table shadowing for graphics virtualization
Publication Date: 2020.12.01 INTEL CORP
  • US10853118B2 patent drawing
  • US10853118B2 patent drawing
  • US10853118B2 patent drawing

AI summary

An apparatus and method are described for pattern driven page table updates. For example, one embodiment of an apparatus comprises a graphics processing unit (GPU) to process graphics commands and responsively render a plurality of image frames; a hypervisor to virtualize the GPU to share the GPU among a plurality of virtual machines (VMs); a first guest page table managed within a first VM, the first guest page table comprising a plurality of page table entries; a first shadow page table managed by the hypervisor and comprising page table entries corresponding to the page table entries of the first guest page table; and a command parser to analyze a current working set of commands submitted from the first VM to the GPU, the command parser to responsively update the first shadow page table responsive to determining a set of page table entries predicted to be used based on the analysis of the working set of commands.