TLB Purge Scope Expansion via Thread Affinity Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In computing environments with virtualization technology, managing the purging of translation look-aside buffers (TLBs) is complex and can negatively affect system performance due to the time-consuming nature of dynamic address translation and the need for frequent purging of entries.

Innovation Solution

A method is implemented where a hardware thread issues a purge request, determining if it is a local request, and accordingly purges entries in the TLB across multiple hardware threads, increasing the scope of local purging, thereby reducing overall purging and enhancing system performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If the scope of local purges is limited to a single hardware thread, then the complexity of managing purges is reduced, but system performance deteriorates due to increased frequency of purging operations

Engineering Contradiction:
Improvepurge management complexityVSAvoidsystem performance
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent merges the purge scope from a single hardware thread to multiple hardware threads by detecting thread affinity and broadcasting purge requests to affiliated threads. This combines the purge operations across multiple threads while maintaining coordinated management, thereby reducing overall purge frequency and improving system performance without excessive complexity increase.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent performs preliminary actions by detecting thread affinity relationships before purging operations and pre-establishing the scope of threads that need to be purged. This preliminary detection and planning allows for more efficient purge execution across multiple threads, reducing the overall number of purges needed and improving performance.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If purging is performed frequently on Start Interpretative Execution entry, then address translation correctness is maintained, but system performance deteriorates due to time consumption

Engineering Contradiction:
Improveaddress translation correctnessVSAvoidpurge time consumption
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies local quality by differentiating the purge scope based on thread affinity relationships. Instead of uniform purging across all threads, it selectively expands the purge scope only to locally affiliated threads that share address translation structures with the issuing thread. This targeted approach maintains translation correctness while reducing unnecessary purges and time consumption.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent uses partial action by performing purges on a selective subset of threads rather than all threads in the system. By identifying and purging only those threads with affinity relationships to the issuing thread, it achieves sufficient address translation correctness without the excessive time cost of system-wide purging.

Inventive Principle:
Principle #16Partial or excessive action

3Productivity

If the scope of local purges is increased to multiple hardware threads, then system performance improves by reducing overall purging, but purge management complexity increases

Engineering Contradiction:
Improvesystem performanceVSAvoidpurge management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent implements self-service by automatically detecting thread affinity relationships and determining the appropriate scope of threads to purge. The system autonomously identifies which threads share address translation structures and expands the purge scope accordingly, without requiring complex external coordination or manual configuration, thus improving performance while managing complexity through automation.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent uses feedback mechanisms by detecting thread affinity relationships and using this information to dynamically adjust the purge scope. The system monitors thread execution patterns and affinity metadata, providing feedback that guides the expansion of purge scope to the appropriate threads, thereby improving performance while maintaining manageable complexity through informed decision-making.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11016907B2Increasing the scope of local purges of structures associated with address translation
Publication Date: 2021.05.25 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11016907B2 patent drawing
  • US11016907B2 patent drawing
  • US11016907B2 patent drawing

AI summary

Increasing the scope of local purges of structures associated with address translation. A hardware thread of a physical core of a machine configuration issues a purge request. A determination is made as to whether the purge request is a local request. Based on the purge request being a local request, entries of a structure associated with address translation are purged on at least multiple hardware threads of a set of hardware threads of the machine configuration.