Selective TLB Invalidation via LPAR Domain Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The broadcast of TLB invalidate entry requests in multiprocessor systems is a high-latency operation that distributes requests to all processor cores, including those not caching the address translation, leading to inefficiency and increased bandwidth utilization on the system fabric.
Innovation Solution
A data processing system where each processor core maintains LPAR information to selectively broadcast TLB invalidate requests only to those nodes caching the relevant address translations, using inter-processor interrupts to update this information and reduce the broadcast scope.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If TLB invalidate entry requests are broadcast to all processor cores, then address translation consistency is maintained across the system, but latency increases and system fabric bandwidth is overutilized
Solution Approach 1:
The patent segments the broadcast domain by dividing processor cores into different domains based on their caching relationships. Instead of a single system-wide broadcast, invalidation requests are segmented and sent only to relevant domains, reducing the number of processors that need to be notified while maintaining consistency where needed.
Solution Approach 2:
The patent implements local quality by making the invalidation broadcast scope adaptive rather than uniform. Each invalidation request is routed to specific domains based on the local caching characteristics of those domains, allowing the system to apply the appropriate level of invalidation scope rather than forcing a system-wide broadcast for all cases.
2Reliability
If TLB invalidate entry requests are broadcast to all processor cores, then address translation consistency is maintained, but system fabric bandwidth utilization increases
Solution Approach 1:
The patent segments the system fabric traffic by creating domain-specific invalidation broadcasts. This segmentation reduces the overall bandwidth consumption on the system fabric by eliminating redundant transmissions to processors that do not need to be invalidated, while still maintaining consistency through targeted domain broadcasts.
Solution Approach 2:
The patent applies local quality by optimizing the broadcast scope according to the specific invalidation needs of each domain. This reduces unnecessary fabric traffic by sending invalidation requests only to domains that actually cache the relevant address translations, thereby reducing overall system fabric bandwidth utilization.
3Loss of time
If selective distribution of TLB invalidate requests is implemented, then latency and bandwidth utilization are reduced, but system complexity increases
Solution Approach 1:
The patent applies preliminary action by pre-establishing domain information and caching relationships before invalidation requests are generated. This allows the system to quickly determine the appropriate broadcast scope without complex real-time analysis, reducing the overhead of selective distribution while maintaining low latency.
Solution Approach 2:
The patent introduces an intermediary mechanism (the domain information structure and broadcast scope determination logic) that simplifies the selective distribution process. This intermediary layer handles the complexity of determining which domains receive invalidation requests, shielding the rest of the system from the complexity while enabling efficient targeted broadcasts.
Data Source
AI summary
A data processing system includes a plurality of processing nodes communicatively coupled to a system fabric. Each of the processing nodes includes a respective plurality of processor cores. Logical partition (LPAR) information for each of a plurality of LPARs is maintained in a register set in each of the processor cores, where the LPAR information indicates, for each of the LPARs, which of the processing nodes may hold an address translation entry for each LPAR. Based on the LPAR information, a first processor core selects a broadcast scope for a multicast request on the system fabric that includes fewer than all of the plurality of processing nodes and issues the multicast request with the selected broadcast scope. The first processor core updates the LPAR information in the register set of a second processor core in another of the plurality of processing nodes via an inter-processor interrupt.


