TLB Shootdown Tracking for Multicore Memory Consistency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In virtualized environments, TLB shootdowns are time-consuming due to the need for interrupts and communication through multiple software layers, leading to significant performance reductions, especially with a large number of virtual processors.

Innovation Solution

A method and system for directing and tracking TLB shootdowns within hardware, where a processing core generates a TLB shootdown request with identification and notification information, allowing only affected cores to process and acknowledge the request, reducing unnecessary processing and communication overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If TLB shootdown requests are sent to all processor cores through interrupts in a virtualized environment, then memory mapping consistency is maintained, but communication overhead and processing time increase significantly

Engineering Contradiction:
Improvememory mapping consistencyVSAvoidTLB shootdown processing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the TLB shootdown process by identifying and targeting only the specific processor cores that have cached the invalidated virtual memory pages, rather than broadcasting to all cores. This is achieved by tracking which cores have active translations for each virtual page, allowing the shootdown request to be sent only to those specific cores, thereby reducing communication overhead while maintaining memory consistency.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary data structure (the shootdown tracking mechanism) that mediates between the memory management unit and processor cores. This intermediary tracks and identifies which cores need to be notified of virtual page invalidations, eliminating the need for broad interrupt broadcasts and reducing the time loss associated with TLB shootdown operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If TLB shootdown requests are processed by all processor cores, then memory consistency is ensured, but resource usage and communication overhead increase

Engineering Contradiction:
Improvememory consistencyVSAvoidcommunication energy
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent segments the set of processor cores into two groups: those that have cached the invalidated virtual pages and those that haven't. By directing shootdown requests only to the relevant subset of cores, the patent reduces communication energy consumption while ensuring memory consistency is maintained for all affected cores.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by treating different processor cores differently based on their actual cache contents. Instead of a uniform broadcast approach, the system identifies and communicates with only those cores that locally hold the invalidated pages, optimizing energy usage by avoiding unnecessary communication with cores that don't need updating.

Inventive Principle:
Principle #3Local quality

3Adaptability or versatility

If software-based TLB shootdown tracking is used, then flexibility is maintained, but processing speed decreases due to multiple software layers

Engineering Contradiction:
Improvesoftware flexibilityVSAvoidTLB shootdown processing speed
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent replaces the software-based TLB shootdown tracking mechanism with a hardware-based implementation. By implementing the shootdown tracking and identification logic in hardware circuits within the memory management unit, the system eliminates the performance penalty of software processing while maintaining the adaptability needed for virtualized environments. This hardware implementation directly identifies affected cores and initiates targeted shootdown requests without software layer overhead.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS10977191B2TLB shootdowns for low overhead
Publication Date: 2021.04.13 GOOGLE LLC
  • US10977191B2 patent drawing
  • US10977191B2 patent drawing
  • US10977191B2 patent drawing

AI summary

Aspects of the disclosure relate to directing and tracking translation lookaside buffer (TLB) shootdowns within hardware. One or more processors, comprising one or more processor cores, may determine that a process executing on a processing core causes one or more virtual memory pages to become disassociated with one or more previously associated physical memory addresses. The processing core which is executing that process which caused the disassociation may generate a TLB shootdown request. The processing core may transmit the TLB shootdown request to the other cores. The TLB shootdown request may include identification information, a shootdown address indicating the disassociated virtual memory page or pages which need to be flushed from the respective TLBs of the other cores, and a notification address indicating where the other cores may acknowledge completion of the TLB shootdown request.