Mediate Pass Through Shared Memory Page Merge

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current GPU virtualization technologies face challenges in efficiently sharing graphics memory among multiple virtual machines while maintaining performance and secure isolation, particularly in mediate pass-through scenarios where direct DMA operations are involved.

Innovation Solution

The implementation of a mediation mechanism that selectively applies page sharing techniques, such as Kernel Same Page Merging (KSM), to non-DMA memory pages while retaining direct DMA access for performance-critical pages, using a mediation mechanism to distinguish between DMA and non-DMA pages and manage their sharing accordingly.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If KSM is applied to merge memory pages across VMs, then memory efficiency is improved, but performance is worsened due to loss of direct DMA access

Engineering Contradiction:
Improvememory usageVSAvoidperformance
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent segments memory pages into two categories: DMA pages and non-DMA pages. DMA pages maintain direct mapping for high-performance access, while non-DMA pages are eligible for KSM merging. This segmentation allows the system to apply memory optimization selectively without compromising performance-critical paths.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different quality of memory access is provided based on the page type: DMA pages receive direct, high-speed access while non-DMA pages accept merged access through the mediation mechanism. This local quality differentiation ensures that performance-sensitive operations maintain optimal speed while less critical operations benefit from memory consolidation.

Inventive Principle:
Principle #3Local quality

2Productivity

If direct DMA access is provided for performance, then productivity is improved, but secure isolation is worsened

Engineering Contradiction:
ImproveperformanceVSAvoidsecure isolation
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent introduces a mediation mechanism that acts as an intermediary between VMs and physical memory. This mediator traps and emulates privileged operations, validating memory accesses and ensuring secure isolation while allowing direct DMA access for performance-critical operations. The mediator monitors and controls access to maintain security boundaries.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The system applies partial mediation: not all memory operations are trapped and emulated, but only privileged operations that require security validation. Common, non-privileged DMA operations proceed directly without mediation overhead, providing performance while maintaining security where necessary.

Inventive Principle:
Principle #16Partial or excessive action

3Quantity of substance

If KSM merges pages with write protection, then memory efficiency is improved, but ease of operation is worsened due to copy-on-write overhead

Engineering Contradiction:
Improvememory usageVSAvoidoperation complexity
Core Design Contradiction:
Quantity of substanceVSEase of operation

Solution Approach 1:

The patent segments memory pages into read-heavy non-DMA pages (suitable for KSM merging) and write-intensive DMA pages (maintained separately). This segmentation ensures that KSM is applied primarily to pages where merging provides benefit without excessive COW overhead, while write-intensive pages maintain direct access for operational simplicity.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS10891237B2Apparatus and method for mediate pass through and shared memory page merge
Publication Date: 2021.01.12 INTEL CORP
  • US10891237B2 patent drawing
  • US10891237B2 patent drawing
  • US10891237B2 patent drawing

AI summary

An apparatus and method are described for mediate pass through and shared memory page merging. For example, one embodiment of a method comprises: generating a page identifier (PI) for each of a set of guest memory pages, wherein equivalent PIs indicate that the corresponding memory pages are the same; upon detecting that a first guest memory page and a second guest memory page have PIs that are equal, merging the first and second guest memory pages into a single memory page; detecting that the first guest memory page is to be used for a direct memory access (DMA) operation; and responsively unmerging the first and second guest memory pages.