Dynamic Cache Allocation for VDI Workloads

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In Virtual Desktop Infrastructure (VDI) systems, the unpredictable I/O activity leads to underutilization of cache memory due to equal allocation for both read and write operations, resulting in reduced VM consolidation ratios and increased costs, while insufficient allocation can cause increased response times and poor user experience.

Innovation Solution

A method to dynamically adjust the memory allocation of a common cache pool by predicting and managing I/O patterns, allocating more memory to read or write operations based on expected activity levels, thereby optimizing cache resource utilization.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If equal memory allocation is used for both read and write operations in cache, then system simplicity is maintained, but cache memory underutilization occurs leading to reduced VM consolidation ratios

Engineering Contradiction:
Improvecache memory utilization efficiencyVSAvoidcache allocation management complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements dynamic cache allocation that adjusts memory distribution between read and write operations based on real-time I/O workload characteristics. The cache manager continuously monitors I/O patterns and reallocates cache memory accordingly, transforming the static equal allocation model into a dynamic adaptive system that optimizes cache utilization for varying VDI workload demands

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the allocation parameter (memory distribution ratio) based on detected I/O workload patterns. By analyzing I/O characteristics and adjusting the cache allocation parameters dynamically, the system adapts to different workload scenarios without requiring complex manual configuration or sacrificing system simplicity

Inventive Principle:
Principle #35Parameter changes

2Speed

If more cache memory is allocated to improve response times, then user experience improves, but VM consolidation ratios decrease and costs increase

Engineering Contradiction:
ImproveI/O response timeVSAvoidtotal cache memory required
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent applies partial action by allocating cache memory selectively based on actual I/O workload requirements rather than providing excessive cache for all scenarios. The system monitors current I/O patterns and allocates cache memory only when and where it is needed, avoiding the waste of allocating large cache sizes for low I/O workloads while still providing fast response times when I/O demand is high

Inventive Principle:
Principle #16Partial or excessive action

3Adaptability or versatility

If static cache allocation is used, then system complexity is reduced, but cache memory cannot adapt to unpredictable I/O activity patterns

Engineering Contradiction:
Improveadaptability to I/O patternsVSAvoidcache management system complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The cache allocation system performs self-service by automatically monitoring its own workload characteristics and making reallocation decisions without external intervention. The cache manager autonomously detects I/O patterns, determines optimal allocation strategies, and adjusts cache memory distribution dynamically, providing adaptability through self-managed operations rather than complex external control mechanisms

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9792217B2Methods and systems for normalizing a read-write cache allocation pool for virtual desktop infrastructure workloads
Publication Date: 2017.10.17 DELL PROD LP
  • US9792217B2 patent drawing
  • US9792217B2 patent drawing
  • US9792217B2 patent drawing

AI summary

Methods and systems for normalizing a read-write cache allocation pool for virtual desktop infrastructure (VDI) workloads are disclosed. The method includes determining a cache allocation policy; determining a range of expected input/output (I/O) levels of a storage system; determining a current I/O level of the storage system; determining a target cache allocation based on the cache allocation policy, the range of expected I/O levels, and the current I/O level, the target cache allocation including a first memory region allocated to read cache operations and a second memory region allocated to write cache operations; and reallocating cache memory based on the target cache allocation.