Dynamic TLB Shootdown Mechanism for Multicore Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

TLB shootdown latency significantly affects application performance in large multicore systems due to the long time required for processor cores to invalidate cached translations, especially as the number of processor cores increases.

Innovation Solution

A dynamic selection mechanism for TLB shootdowns is implemented, where the operating system determines the cost of using either an inter-processor interrupt (IPI) or a hardware broadcast (TLBi instruction) based on factors like the number of affected cores, system topology, and estimated completion time, selecting the mechanism with the lower cost to minimize latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a hardware broadcast (TLBi instruction) is used for TLB shootdown, then all processor cores are notified simultaneously, but the latency increases significantly in large multicore systems

Engineering Contradiction:
ImproveTLB coherencyVSAvoidTLB shootdown latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the broadcast notification process by identifying and notifying only the subset of processor cores that have cached translations for the affected virtual address, rather than broadcasting to all cores. This segmentation reduces the number of cores that need to be notified, thereby reducing TLB shootdown latency while maintaining coherency for the affected translations.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by treating different processor cores differently based on whether they have cached translations for the affected virtual address. Cores with cached translations receive shootdown notifications, while cores without such caches do not, optimizing the notification process by applying quality differentiation to local conditions of each core.

Inventive Principle:
Principle #3Local quality

2Loss of time

If an inter-processor interrupt (IPI) is used for TLB shootdown, then only affected processor cores are notified, but the complexity of determining which cores are affected increases

Engineering Contradiction:
ImproveTLB shootdown latencyVSAvoidShootdown mechanism complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent uses feedback mechanisms where processor cores report back whether they have cached translations for affected virtual addresses. This feedback allows the system to dynamically determine which cores need to be notified, enabling IPI-based targeted shootdowns while managing the complexity through structured feedback collection and processing.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent performs preliminary actions by maintaining information about which processor cores have cached translations for virtual addresses before shootdown operations are needed. This preliminary tracking simplifies the shootdown process by having the core subset identification already prepared, reducing the complexity of determining affected cores at shootdown time.

Inventive Principle:
Principle #10Preliminary action

3Loss of time

If targeted IPIs are used for TLB shootdown, then fewer processor cores are notified, but the accuracy of identifying affected cores must be high to maintain coherency

Engineering Contradiction:
ImproveTLB shootdown latencyVSAvoidAffected core identification accuracy
Core Design Contradiction:
Loss of timeVSMeasurement precision

Solution Approach 1:

The patent performs preliminary tracking of which processor cores have cached translations for each virtual address before shootdown operations. This preliminary action ensures accurate identification of affected cores by having the information prepared in advance, maintaining coherency while enabling targeted notifications to only the necessary subset of cores.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10552339B2Dynamically adapting mechanism for translation lookaside buffer shootdowns
Publication Date: 2020.02.04 ADVANCED MICRO DEVICES INC
  • US10552339B2 patent drawing
  • US10552339B2 patent drawing
  • US10552339B2 patent drawing

AI summary

An operating system (OS) of a processing system having a plurality of processor cores determines a cost associated with different mechanisms for performing a translation lookaside buffer (TLB) shootdown in response to, for example, a virtual address being remapped to a new physical address, and selects a TLB shootdown mechanism to purge outdated or invalid address translations from the TLB based on the determined cost. In some embodiments, the OS selects an inter-processor interrupt (IPI) as the TLB shootdown mechanism if the cost associated with sending an IPI is less than a threshold cost. In some embodiments, the OS compares the cost of using an IPI as the TLB shootdown mechanism versus the cost of sending a hardware broadcast to all processor cores of the processing system as the shootdown mechanism and selects the shootdown mechanism having the lower cost.