Hypervisor Memory Pool Allocation for Data Center Hosts
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Computing devices in data centers often face memory shortages while other devices within the same center underutilize their memory resources, and upgrading memory can be expensive, necessitating a solution to disaggregate memory from local hosts.
Innovation Solution
A method is introduced to determine a host capable of providing memory, obtain a region of memory, update metadata to indicate its source, divide the memory into sub-portions, and allocate these sub-portions to virtual computing instances on the requesting host, utilizing a cluster memory controller and memory manager to track and manage memory allocation across hosts.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If memory is upgraded on a given device, then memory capacity and performance are improved, but cost increases
Solution Approach 1:
The patent extracts memory resources from individual hosts and consolidates them into a shared memory pool at the data center level. Instead of upgrading memory on each individual device, the system takes out memory from underutilized hosts and makes it available to memory-starved hosts through the shared pool, eliminating the need for expensive individual upgrades.
Solution Approach 2:
The patent creates a universal memory pool that serves multiple hosts simultaneously. The same memory resources can be dynamically allocated to different hosts based on demand, making the memory infrastructure multi-functional rather than dedicated to single hosts. This universality allows one memory pool to serve the needs of multiple computing devices.
2Productivity
If memory is disaggregated from local hosts, then memory utilization efficiency is improved, but system complexity increases
Solution Approach 1:
The patent introduces a memory pool manager as an intermediary component that handles the complexity of memory disaggregation. This manager sits between the hosts and the physical memory resources, managing allocation, tracking usage, and coordinating access. By centralizing management functions in this intermediary layer, the system achieves efficient memory utilization without requiring complex changes at each host level.
Data Source
AI summary
The disclosure provides an approach for creating a pool of memory out of local memories of host machines, and providing that pool for the hosts to use. The pool is managed by a controller that keeps track of memory usage and allocated memory among hosts. The controller allocates or reclaims memory between hosts, as needed by the hosts. Memory allocated from a second host to a first host may then be divided into smaller portions by the first host, and further allocated to virtual machines executing within the first host.


