Virtual Steering Tag Translation in Virtualized Memory Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In data processing systems, efficient management of memory access requests across virtual machines is challenging due to the need for isolating physical resources while allowing concurrent processing, which often results in interference and delays.

Innovation Solution

The implementation of virtual steering tags, managed by an IOMMU, translates virtual steering tags to physical steering tags, enabling efficient memory access by mapping virtual machines to specific processor cores and cache resources, thereby isolating physical resources and optimizing memory access requests.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If virtual machines are processed concurrently in virtualized environments, then processing efficiency is improved, but resource isolation and interference management become more difficult

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidresource management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the steering tag space into virtual and physical domains. Virtual steering tags are used by virtual machines in the virtualized environment, while physical steering tags are used by the underlying hardware. The IOMMU maintains a mapping between virtual and physical steering tags, allowing concurrent VM processing while maintaining resource isolation through the virtualization layer.

Inventive Principle:
Principle #1Segmentation

2Reliability

If physical resources are isolated for different virtual machines, then resource management is improved, but memory access requests experience delays

Engineering Contradiction:
Improveresource isolationVSAvoidmemory access delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The IOMMU acts as an intermediary between virtual machines and physical hardware resources. It translates virtual steering tags from memory access requests into physical steering tags without requiring VMs to be aware of physical resource allocation. This mediation maintains resource isolation while enabling efficient memory access through hardware-assisted translation, avoiding software intervention delays.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Productivity

If virtual steering tags are translated to physical steering tags, then memory access efficiency is improved, but translation overhead is introduced

Engineering Contradiction:
Improvememory access efficiencyVSAvoidtranslation time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The system performs preliminary setup of virtual-to-physical steering tag mappings during device initialization and VM configuration. The IOMMU is pre-configured with the mapping tables that associate virtual steering tags with physical steering tags. During runtime, the IOMMU uses these pre-established mappings to perform rapid translation of steering tags in memory access requests, minimizing translation overhead.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10866895B2Steering tag support in virtualized environments
Publication Date: 2020.12.15 ATI TECHNOLOGIES ULC
  • US10866895B2 patent drawing
  • US10866895B2 patent drawing
  • US10866895B2 patent drawing

AI summary

A method of managing memory access includes receiving, at an input output memory management unit, a memory access request from a device. The memory access request includes a virtual steering tag associate associated with a virtual machine. The method further includes translating the virtual steering tag to a physical steering tag directing memory access of a cache memory associated with a processor core of a plurality of processor cores. The virtual machine is implemented on the processor core. The method also includes accessing the cache memory to implement the memory access request.