Memory Pooling via Expansion Switch for Cloud Server Resource Allocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional solutions for memory resource fragmentation in cloud computing systems, such as using memory expansion devices for each host, lead to increased costs and inflexibility due to difficulties in estimating memory requirements and changes in virtual machine configurations over time.
Innovation Solution
A memory pooling configuration system that includes a memory configuration device, multiple servers, and an expansion switch, where the target server sends memory access requests to the expansion switch when the virtual address does not correspond to its physical address space, and the expansion switch forwards these requests to an associated server, allowing for dynamic memory resource allocation.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If memory expansion devices are equipped for each host, then memory resource fragmentation is addressed, but system cost increases
Solution Approach 1:
The patent merges memory resources from multiple servers into a unified memory pool through the expansion switch. Instead of each server having separate memory expansion devices, memory resources are consolidated and shared across the server cluster, reducing total hardware requirements and cost while maintaining reliability.
Solution Approach 2:
The expansion switch serves as a universal memory access interface for multiple servers simultaneously. A single memory pool serves multiple servers, allowing each server to access memory resources dynamically without requiring dedicated expansion devices, thereby reducing system cost while addressing fragmentation.
2Quantity of substance
If memory expansion devices are configured for each host, then memory capacity is increased, but adaptability to configuration changes deteriorates
Solution Approach 1:
The patent implements dynamic memory allocation where memory capacity is not fixed per server but can be dynamically adjusted based on configuration changes. The memory pool allows servers to access memory resources flexibly, adapting to changing virtual machine configurations without requiring physical reconfiguration of expansion devices.
Solution Approach 2:
The memory pool is segmented into addressable regions that can be dynamically allocated to different servers. The expansion switch manages address mapping to allow servers to access specific memory segments as needed, providing adaptability to configuration changes while maintaining total memory capacity.
3Quantity of substance
If memory expansion devices are used, then memory resources are expanded, but device complexity increases
Solution Approach 1:
The expansion switch acts as an intermediary between servers and the memory pool, managing all memory access requests. This centralized mediation simplifies the system architecture by eliminating the need for complex point-to-point memory expansion devices at each server, reducing overall device complexity while expanding memory resources.
Solution Approach 2:
The system uses virtual address mapping to create logical copies of memory space. Each server perceives an extended address space that maps to the physical memory pool through the expansion switch, allowing memory expansion without requiring physical memory devices at each server location.
Data Source
AI summary
A memory pooling configuration system includes: a plurality of servers, an expansion switch in communication with the plurality of servers, and a memory configuration device. A target server acquires first memory pooling configuration information, which instructs the target server to send a second memory access request to the expansion switch when a virtual address indicated by a first memory access request does not correspond to a physical address space of the target server. The expansion switch acquires third memory pooling configuration information, which instructs the expansion switch to forward the second memory access request to an associated server based on the second memory access request. The associated server acquires second memory pooling configuration information, which instructs the associated server to return the memory access result of the second memory access request to the expansion switch, which forwards the memory access result to the target server.


