Variable Performance Storage Device Bandwidth Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current storage device controllers lack the ability to dynamically adjust performance levels for different virtual machines sharing the same storage device, leading to inefficiencies and inability to optimize bandwidth based on varying user needs, resulting in wasted resources and thermal management issues.

Innovation Solution

Implementing configurable performance controllers within storage devices that allow for varying performance levels to be requested and adjusted based on demand, enabling better resource allocation and thermal management by altering performance control variables such as submission queue priority, number of queues, command arbitration, and bandwidth limiter settings.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of energy

If a single storage device is shared among multiple virtual machines, then resource utilization efficiency is improved, but the ability to prioritize storage device use between users deteriorates

Engineering Contradiction:
Improvestorage device bandwidth utilization efficiencyVSAvoidability to prioritize storage device use between users
Core Design Contradiction:
Loss of energyVSAdaptability or versatility

Solution Approach 1:

The patent segments the storage device bandwidth into multiple virtual channels, with each channel assigned to a specific virtual machine. This segmentation enables independent control and prioritization of bandwidth allocation for each user while maintaining efficient resource utilization through the shared physical storage device.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements dynamic bandwidth allocation where the storage device can adjust performance levels and priority assignments in real-time based on user needs and system conditions. This dynamic capability allows the system to adapt to varying workloads and prioritize storage access for different virtual machines as required.

Inventive Principle:
Principle #15Dynamics

2Device complexity

If performance levels are kept uniform across all virtual machines, then device complexity is reduced, but the ability to optimize bandwidth based on user needs deteriorates

Engineering Contradiction:
Improveperformance control configurationVSAvoidbandwidth optimization capability
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent applies local quality by allowing different performance characteristics to be assigned to different virtual machines or storage queues. Each virtual machine can have customized performance parameters such as priority levels, bandwidth limits, and I/O scheduling weights, enabling optimization for specific user needs without complicating the overall device architecture.

Inventive Principle:
Principle #3Local quality

3Reliability

If storage device performance is increased to meet peak demand, then user satisfaction is improved, but thermal output and energy consumption increase

Engineering Contradiction:
Improvestorage device performance availabilityVSAvoidthermal output
Core Design Contradiction:
ReliabilityVSTemperature

Solution Approach 1:

The patent implements periodic action through I/O scheduling mechanisms that can throttle or prioritize storage operations based on temporal patterns and system conditions. By scheduling I/O requests periodically and adjusting performance levels dynamically, the system can meet peak demand when necessary while reducing thermal output during lower utilization periods.

Inventive Principle:
Principle #19Periodic action

4Quantity of substance

If multiple physical drives are added to meet increasing storage needs, then storage capacity is improved, but device complexity and resource waste increase

Engineering Contradiction:
Improvestorage capacityVSAvoidphysical drive configuration
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent applies universality by enabling a single physical storage device to serve multiple virtual machines with different performance requirements through virtualization. This multi-functionality allows the same physical resource to be dynamically allocated to different users and workloads, eliminating the need for multiple dedicated physical drives and reducing overall system complexity.

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

Data Source

PatentUS11494098B2Variable performance storage devices
Publication Date: 2022.11.08 SANDISK TECHNOLOGIES LLC
  • US11494098B2 patent drawing
  • US11494098B2 patent drawing
  • US11494098B2 patent drawing

AI summary

Performance configurable controllers can include a variable performance storage device that has one or more communication channels for connection with a host-computing device and a plurality of memory devices within a memory array. The storage device may include controllers that provide access to separate memory devices within the memory array. The storage device can also have performance logic installed that can be configured to direct the controllers to operate at performance modes, each associated with a different level of performance. Each performance mode can be selectable by a host-computing device and can comprise one or more preconfigured control variables. In other embodiments, storage device performance can be configured to operate at various performance levels via direct control variable change requests sent from the host-computing system.