Partition Identifier Remapping Circuitry for Memory Resource Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In shared memory systems, it is challenging to prevent one software execution environment from negatively impacting the performance of another by managing resource allocation and contention effectively across multiple software execution environments.

Innovation Solution

The implementation of first and second stage partition identifier remapping circuitry dynamically manages resource allocation and contention by translating partition identifiers into internal identifiers, allowing for dynamic override based on sideband signals, enabling efficient switching between partitions without requiring operating system intervention.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If cache is partitioned among different software execution environments, then performance isolation is improved, but flexibility to allow a software execution environment to access multiple partitions deteriorates

Engineering Contradiction:
Improveperformance isolationVSAvoidflexibility to access multiple partitions
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The patent introduces partition identifier remapping circuitry as an intermediary layer between software execution environments and cache partitions. This remapping circuitry translates partition identifiers dynamically, enabling a software execution environment to access multiple cache partitions while maintaining performance isolation. The intermediary resolves the contradiction by decoupling the logical partition assignment from physical cache allocation, allowing flexible multi-partition access without compromising isolation guarantees.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If static partition assignment is used, then performance isolation is improved, but resource utilization efficiency deteriorates

Engineering Contradiction:
Improveperformance isolationVSAvoidresource utilization efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent implements dynamic partition identifier remapping that allows cache partition assignments to change based on runtime conditions. The remapping circuitry can dynamically adjust which cache partitions are assigned to which software execution environments, enabling efficient resource utilization while maintaining performance isolation. This dynamic approach resolves the contradiction by allowing the system to adapt partition assignments to current workload demands rather than being constrained by static assignments.

Inventive Principle:
Principle #15Dynamics

3Productivity

If dynamic partition switching is enabled, then resource utilization efficiency is improved, but access latency unpredictability worsens

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidaccess latency unpredictability
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent employs partition identifier remapping circuitry that performs partition assignment decisions in advance or at cache line allocation time rather than at access time. By pre-establishing partition mappings and caching these mappings, the system achieves dynamic resource utilization without incurring latency penalties during actual cache accesses. This preliminary action resolves the contradiction by separating the dynamic decision-making process from the time-critical cache access path.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS11662931B2Mapping partition identifiers
Publication Date: 2023.05.30 ARM LTD
  • US11662931B2 patent drawing
  • US11662931B2 patent drawing
  • US11662931B2 patent drawing

AI summary

An apparatus includes processing circuitry configured that performs data processing in response to instructions of one of a plurality of software execution environments. First stage partition identifier remapping circuitry remaps a partition identifier specified for a memory transaction by a first software execution environment to a internal partition identifier to be specified with the memory transaction issued to at least one memory system component. In response to a memory transaction to be handled, the at least one memory system component controls allocation of resources for handling the memory transaction or manage contention for the resources in dependence on a selected set of memory system component parameters selected in dependence on the internal partition identifier specified by the memory transaction. Second stage partition identifier remapping circuitry dynamically overrides the internal partition identifier to be specified with the memory transaction based on a sideband input signal and the first stage partition identifier remapping circuitry indicates, for the partition identifier, whether the second stage partition identifier remapping circuitry is to be used.