Selective Purging of Virtualized Address Translation Entries

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In computing environments with virtualization, the current methods for purging entries from translation look-aside buffers (TLBs) often result in over-purging of guest operating system entries, leading to performance losses due to the need to rewalk address translation tables.

Innovation Solution

Implementing a selective purging mechanism that uses a selective purging indicator to differentiate between host and guest entries, allowing only host entries to be purged when necessary, thereby avoiding the unnecessary invalidation of guest entries.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all TLB entries are purged during host invalidation operations, then host address translation consistency is ensured, but guest operating system entries are unnecessarily invalidated causing performance loss

Engineering Contradiction:
Improvehost address translation consistencyVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments TLB entries into host entries and guest entries, allowing selective purging of only host entries during invalidation operations. This segmentation enables the system to maintain guest TLB entries that remain valid, avoiding unnecessary performance degradation while still ensuring host address translation consistency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by treating host and guest TLB entries differently based on their origin and validity. Host entries are purged to maintain consistency, while guest entries are preserved when still valid, optimizing system performance. The selective purging mechanism checks entry ownership and applies different quality treatment to different segments of the TLB.

Inventive Principle:
Principle #3Local quality

2Productivity

If a selective purging mechanism is implemented to differentiate between host and guest entries, then guest entry preservation is improved, but the complexity of the purging mechanism increases

Engineering Contradiction:
Improvesystem performanceVSAvoidpurging mechanism complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent extracts the ownership identification information from TLB entries, using saved owner identifiers to determine whether each entry belongs to the host or a guest operating system. This extraction approach simplifies the selective purging mechanism by providing clear ownership markers that can be checked without complex analysis of entry contents.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent introduces an intermediary mechanism that checks the ownership identifier of each TLB entry during purging operations. This intermediary check acts as a simple gatekeeper that determines whether to purge or preserve an entry, avoiding the need for complex decision logic while implementing selective purging functionality.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10282305B2Selective purging of entries of structures associated with address translation in a virtualized environment
Publication Date: 2019.05.07 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10282305B2 patent drawing
  • US10282305B2 patent drawing
  • US10282305B2 patent drawing

AI summary

Selective purging of entries of structures associated with address translation. A request to purge entries of a structure associated with address translation is obtained. Based on obtaining the request, a determination is made as to whether selective purging of the structure associated with address translation is to be performed. Based on determining that selective purging is to be performed, one or more entries of the structure associated with address translation are purged. The selectively purging includes clearing the one or more entries of the structure associated with address translation for a host of the computing environment and leaving one or more entries of one or more guest operating systems in the structure associated with address translation. The one or more guest operating systems are managed by the host.