I/O Load Value Prediction for Virtual Environments

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computer systems face latency issues in I/O data access due to the inability to utilize caching techniques for non-normal memory-like data, and virtualization complicates tracking initial actions and register values for multiple virtual I/O devices, leading to increased latency and compatibility challenges.

Innovation Solution

Implementing a method for I/O load value prediction using physical or virtual addressing, which involves a comparator/multiplexer to determine the correct I/O device and predict register values, eliminating the need for additional I/O instructions and minimizing latency by using pre-determined databases and virtual address translation to avoid TLB translation latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If traditional I/O data access methods are used without caching, then data access can be performed for non-normal memory-like data, but latency is increased due to the inability to utilize caching techniques

Engineering Contradiction:
ImproveI/O data access latencyVSAvoidcaching capability
Core Design Contradiction:
Loss of timeVSAdaptability or versatility

Solution Approach 1:

The patent segments the I/O address space into multiple regions, each mapped to different I/O devices. The comparator/multiplexer structure divides the address decoding function into segments that can independently identify and route to specific devices, enabling parallel processing and reducing access latency while maintaining device-specific access characteristics

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary action by pre-configuring the comparator/multiplexer with device address databases and pre-determining the routing paths for different I/O devices. This allows the system to quickly identify the target device and predict register values without requiring full I/O instruction execution, effectively caching the addressing information to reduce latency

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If virtualization is implemented to support multiple virtual I/O devices, then system versatility is improved, but tracking initial actions and register values becomes more complex and latency increases

Engineering Contradiction:
Improvevirtual device supportVSAvoidtracking complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a universal comparator/multiplexer structure that can handle both physical and virtual I/O device addressing through a unified interface. The virtualization layer is integrated into the existing I/O addressing mechanism, allowing the same hardware structure to serve multiple virtual devices without requiring separate tracking mechanisms for each device type

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent introduces an intermediary virtualization layer that sits between the processor and physical I/O devices. This intermediary translates virtual device addresses to physical addresses and manages register value predictions across multiple virtual devices, simplifying the tracking complexity by providing a single point of coordination rather than requiring the processor to track each virtual device separately

Inventive Principle:
Principle #24Intermediary (Mediator)

3Measurement precision

If additional I/O instructions are issued to read register values, then data accuracy is improved, but latency is increased due to the additional instructions required

Engineering Contradiction:
Improveregister value accuracyVSAvoidinstruction execution time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent implements self-service by enabling the comparator/multiplexer structure to automatically predict register values based on the I/O instruction and device database without requiring the processor to issue additional read instructions. The system serves its own information needs by generating and maintaining the predicted value databases, eliminating the need for separate data retrieval operations

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9753859B2Input output value prediction with physical or virtual addressing for virtual environment
Publication Date: 2017.09.05 MARVELL ASIA PTE LTD
  • US9753859B2 patent drawing
  • US9753859B2 patent drawing
  • US9753859B2 patent drawing

AI summary

Method and system embodying the method for input/output value determination at a processor core, comprising generating an I/O instruction comprising at least a physical or a virtual address; comparing the address with a relevant database of I/O devices addresses. When the comparing is successful determining the I/O device or a state on the I/O device to receive the I/O instruction in accordance with the address; setting a value of a first register to a value identifying the determined I/O device or the state on the I/O device; predicting a value to be set in a second register in accordance with the address; and setting a value of a third register. Providing I/O instruction other than a request I/O instruction to the I/O device or the state on the I/O device, which sets a register to a value according to the I/O instruction and reports the value to the processor core.