Assignable Device Interface Selection for Scalable I/O Virtualization

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current I/O virtualization solutions, such as SR-IOV, are not scalable enough to support high-density, hyper-scale computing environments with a large number of containers or VMs, leading to inefficiencies in device sharing and resource allocation, particularly in terms of latency and throughput for critical workloads.

Innovation Solution

Scalable IOV introduces Assignable Device Interfaces (ADIs) for fine-grained resource allocation and intelligent selection based on locality and utilization metrics, allowing for efficient and flexible sharing of I/O devices across multiple domains, optimizing ADI assignments through an API-driven approach that considers application requirements and priorities.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If direct device assignment is used, then I/O virtualization performance is improved, but device sharing across multiple VMs is not supported

Engineering Contradiction:
ImproveI/O virtualization performanceVSAvoiddevice sharing capability
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent segments a single physical device into multiple virtual device instances (VDEVs), each capable of being assigned to different VMs. This segmentation allows the device to be shared across multiple virtual machines while maintaining direct device assignment performance characteristics for each VDEV instance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates virtual copies of device interfaces (ADIs) that can be assigned to multiple VMs. These virtual device instances replicate the functionality of the physical device, enabling multiple VMs to access device resources simultaneously with near-native performance.

Inventive Principle:
Principle #26Copying

2Adaptability or versatility

If SR-IOV is used for hardware-assisted I/O virtualization, then device sharing across multiple VMs is enabled, but scalability for high-density computing environments is limited

Engineering Contradiction:
Improvedevice sharing capabilityVSAvoidscalability for high-density computing
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent further segments virtual device instances into multiple assignable device interfaces (ADIs) within each VDEV. This multi-level segmentation (physical device → VDEVs → ADIs) enables fine-grained resource allocation that scales to thousands of domains, far exceeding traditional SR-IOV capabilities.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an additional dimension of virtualization by creating multiple ADI instances within each VDEV. This adds a new layer of granularity to the virtualization hierarchy, enabling support for hyper-scale computing environments with thousands of containers or VMs.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Adaptability or versatility

If traditional virtualization is used, then device sharing is supported, but latency and throughput for critical workloads are degraded

Engineering Contradiction:
Improvedevice sharing capabilityVSAvoidlatency for critical workloads
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent introduces virtual device instances and assignable device interfaces as intermediaries between VMs and physical devices. These intermediaries enable device sharing while maintaining direct device assignment performance by allowing guest software to directly access assigned ADIs without VMM intervention for most operations.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS20230004417A1Method and apparatus to select assignable device interfaces for virtual device composition
Publication Date: 2023.01.05 INTEL CORP
  • US20230004417A1 patent drawing
  • US20230004417A1 patent drawing
  • US20230004417A1 patent drawing

AI summary

Scalable I/O Virtualization (Scalable IOV) allows efficient and scalable sharing of Input/Output (I/O) devices across a large number of containers or Virtual Machines. Scalable IOV defines the granularity of sharing of a device as an Assignable Device Interface (ADI). In response to a request for a virtual device composition, an ADI is selected based on affinity to the same NUMA node as the running virtual machine, utilization metrics for the Input-Output Memory Management Unit (IOMMU) unit and utilization metrics of a device of a same device class. Selecting the ADI based on locality and utilization metrics reduces latency and increases throughput for a virtual machine running critical or real-time workloads.