Batched Storage Hinting for Fast VM Allocation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In virtualized computer systems, the overhead of storage wiping and reallocation between virtual machines is significant, affecting performance due to the need to clear content from storage blocks before reallocating them, which is time-consuming and resource-intensive.

Innovation Solution

A hypervisor implements batched storage hinting and fast guest storage allocation by detecting unused storage blocks and reallocating them without clearing their content, using batched indications to reduce communication overhead and minimize data leaks between virtual machines.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If storage blocks are cleared before reallocation to ensure security, then data leakage between virtual machines is prevented, but storage reallocation overhead and time consumption increase significantly

Engineering Contradiction:
Improvedata securityVSAvoidstorage reallocation time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system uses self-service by having the guest operating system voluntarily provide storage hint information to the hypervisor, eliminating the need for the hypervisor to actively query or clear storage blocks. The guest OS maintains its own storage usage information and shares it with the hypervisor, allowing the hypervisor to make intelligent reallocation decisions without time-consuming clearing operations.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system performs preliminary action by maintaining storage hint information that tracks which storage blocks are currently in use by the guest operating system. This advance knowledge allows the hypervisor to identify reusable storage blocks before reallocation occurs, preventing the need for time-consuming clearing operations while ensuring security through informed decision-making.

Inventive Principle:
Principle #10Preliminary action

2Productivity

If storage blocks are reused without clearing to improve performance, then storage reallocation overhead is reduced, but the risk of data leakage between virtual machines increases

Engineering Contradiction:
Improvestorage allocation efficiencyVSAvoiddata leakage risk
Core Design Contradiction:
ProductivityVSObject-affected harmful factors

Solution Approach 1:

The system implements feedback by continuously tracking storage block usage status through storage hint information provided by the guest operating system. The hypervisor uses this feedback to make intelligent decisions about which storage blocks can be safely reused, ensuring that only blocks confirmed to be unused are reallocated without clearing, thus maintaining security while improving efficiency.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The guest operating system performs self-service by maintaining accurate records of its own storage usage and voluntarily sharing this information with the hypervisor. This self-reported storage hint information enables the hypervisor to confidently reuse storage blocks without clearing them, as the guest OS has already confirmed they are unused, thereby eliminating both security risks and clearing overhead.

Inventive Principle:
Principle #25Self-service

3Manufacturing precision

If individual storage block allocation requests are processed separately, then allocation precision is maintained, but communication overhead between guest operating system and hypervisor increases

Engineering Contradiction:
Improvestorage allocation precisionVSAvoidcommunication overhead
Core Design Contradiction:
Manufacturing precisionVSUse of energy by moving object

Solution Approach 1:

The system merges multiple individual storage allocation requests into a single batched operation. Instead of processing each storage block allocation request separately between the guest operating system and hypervisor, the system accumulates multiple requests and processes them together, significantly reducing communication overhead while maintaining precise allocation through the use of storage hint information to identify suitable blocks.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS11237879B2Batched storage hinting with fast guest storage allocation
Publication Date: 2022.02.01 RED HAT INC
  • US11237879B2 patent drawing
  • US11237879B2 patent drawing
  • US11237879B2 patent drawing

AI summary

Systems and methods for batched storage hinting with fast guest storage allocation. An example method may involve: detecting, by a hypervisor, that storage has been released by a guest operating system and remains allocated to a virtual machine executing the guest operating system; accessing, by the hypervisor, one or more sets of storage blocks, wherein a set of the one or more sets comprises an identifier associated with the storage and is associated with the virtual machine; receiving, by a processing device executing the hypervisor, a request to allocate a storage block to the virtual machine; identifying, by the hypervisor, at least one storage block of the one or more sets that is associated with the virtual machine; and allocating the at least one storage block to the virtual machine.