I/O Adapter Segments Large Requests to Manage Memory

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Server computers with I/O adapter devices face congestion and delays due to limited physical resources, especially when handling large I/O requests from multiple virtual machines, as these devices often run out of memory, leading to intermittent and excessive delays.

Innovation Solution

The I/O adapter device segments large I/O requests into smaller transactions, processes each transaction individually, and returns a response once complete, thereby reducing the memory requirements and allowing other transactions to be handled concurrently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the I/O adapter device processes large I/O requests from multiple virtual machines, then the service coverage is improved, but the memory resource is exhausted causing congestion and delays

Engineering Contradiction:
Improveservice coverageVSAvoidmemory resource
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent segments large I/O requests into smaller transactions that can be processed individually within available memory constraints. By dividing a large I/O request into multiple smaller transactions, the system can process each segment sequentially or in parallel without requiring the entire large request to be held in memory simultaneously, thus resolving the contradiction between handling large requests and limited memory resources.

Inventive Principle:
Principle #1Segmentation

2Productivity

If multiple virtual machines use the I/O adapter device concurrently, then the productivity is improved, but the delay increases due to resource contention

Engineering Contradiction:
Improveconcurrent processing capabilityVSAvoidprocessing delay
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

By segmenting I/O requests into smaller transactions, multiple virtual machines can have their requests broken down into manageable units that can be interleaved and processed concurrently. This allows the I/O adapter to switch between different virtual machine requests at transaction boundaries, reducing the waiting time for each virtual machine while maintaining high overall productivity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent enables continuous processing by allowing the I/O adapter to interleave transactions from multiple virtual machines. Instead of completing one entire I/O request before starting another, the system can process transactions from different virtual machines in an interleaved manner, ensuring that the I/O adapter remains continuously utilized and reducing idle time while maintaining fair resource distribution.

Inventive Principle:
Principle #20Continuity of useful action

3Manufacturing precision

If the I/O adapter device stores large I/O transactions in memory, then the manufacturing precision is improved for data integrity, but the congestion increases due to limited memory space

Engineering Contradiction:
Improvedata integrityVSAvoidcongestion management
Core Design Contradiction:
Manufacturing precisionVSDevice complexity

Solution Approach 1:

By dividing large I/O requests into smaller transactions, each segment can be stored and processed with appropriate error checking and data integrity measures. This segmentation reduces the memory footprint of each transaction while maintaining data integrity through proper transaction management, reducing congestion without sacrificing precision.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements a mechanism where completed transactions are discarded from memory and resources are recovered for use by subsequent transactions. This allows the I/O adapter to maintain data integrity for active transactions while efficiently managing limited memory resources by freeing space as transactions complete, reducing congestion without compromising data accuracy.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS9934065B1Servicing I/O requests in an I/O adapter device
Publication Date: 2018.04.03 AMAZON TECH INC
  • US9934065B1 patent drawing
  • US9934065B1 patent drawing
  • US9934065B1 patent drawing

AI summary

Server computers may include one or more input/output (I/O) adapter devices for communicating with a network and/or direct-attached device. The I/O adapter device may have limited physical resources, such as memory. Large I/O transactions may occupy all available memory on the I/O adapter device, thus causing other I/O transactions to experience intermittent and excessive delays. The I/O adapter device can be configured to issue one or more transactions for a large I/O request. Each transaction transfers a portion of the data requested by the large I/O request. When all the transactions have completed, the client that requested the large I/O request is informed that the I/O request has completed.