Memory Reconfiguration Without System Reboot
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Cloud Service Providers face disruptions and increased downtime due to the need for server reclassification, which involves cold resets and manual intervention, failing to meet stringent uptime requirements and efficiently reconfigure memory subsystems.
Innovation Solution
The system offloads memory reconfiguration to the operating system with platform/firmware assistance, allowing dynamic enumeration and selection of memory configurations without a cold reset, using System Management Interrupts to reprogram the Unified Extensible Firmware Interface (UEFI) and save/restore memory context.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If memory reconfiguration is performed using traditional cold reset method, then memory configuration can be changed, but server downtime increases and uptime requirements are not met
Solution Approach 1:
The system performs preliminary actions by saving memory context to an auxiliary storage device before reconfiguration, and restores it after reconfiguration. This allows the memory subsystem to be reconfigured without losing the operational state, thereby avoiding cold resets and reducing server downtime while maintaining memory configuration flexibility
Solution Approach 2:
An auxiliary storage device is introduced as an intermediary to store memory context during reconfiguration. This intermediary component enables the separation of memory context preservation from memory subsystem reconfiguration, allowing hot reconfiguration without cold resets and meeting stringent uptime requirements
2Adaptability or versatility
If manual intervention is used for server reclassification, then reconfiguration can be performed, but operational efficiency decreases and productivity is reduced
Solution Approach 1:
The system implements self-service by enabling the operating system to dynamically enumerate, select, and trigger memory reconfiguration based on workload conditions without manual intervention. The system automatically manages the entire reconfiguration process including saving context, triggering reconfiguration, and restoring context, thereby improving operational efficiency while maintaining server reclassification capability
Solution Approach 2:
The system introduces dynamic memory reconfiguration that can be triggered at runtime based on workload conditions. The memory configuration can be changed dynamically without cold resets, allowing the system to adapt to changing conditions automatically and improve productivity through automated, on-demand reconfiguration
3Adaptability or versatility
If cold reset is performed for memory reconfiguration, then memory subsystem can be reconfigured, but server uptime decreases and performance is lost
Solution Approach 1:
The system performs preliminary action by saving memory context to an auxiliary storage device before reconfiguration. This preliminary preservation of context enables the memory subsystem to be reconfigured hot without cold resets, maintaining server uptime and preventing performance loss while achieving memory subsystem reconfigurability
Solution Approach 2:
An auxiliary storage device serves as an intermediary to preserve memory context during reconfiguration. This intermediary enables hot reconfiguration of the memory subsystem without cold resets, thereby maintaining server uptime and reliability while achieving the desired reconfigurability
Data Source
AI summary
A Cloud Service Provider reconfigures a memory subsystem during routine operation, while minimizing the amount of time a server is not online. Server downtime is reduced by offloading reconfiguration of system memory to the operating system with platform assistance. The operating system enumerates potential memory configurations of the memory subsystem with associated performance characteristics in an abstracted manner and performs reconfiguration of the memory subsystem without a cold reset. When reconfiguration of the memory subsystem is deemed necessary by the operating system, the operating system examines the enumerated memory subsystem configurations provided by system firmware. After selecting the memory subsystem configuration, the operating system initiates a reconfiguration process. The reconfiguration process saves any existing memory context to an auxiliary device, requests system firmware to perform the memory subsystem reconfiguration, and restores the existing memory context from the auxiliary device after the memory subsystem reconfiguration has been completed.


