Dynamic I/O Queue Redistribution for Thermal Management
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Storage controllers in storage systems, particularly those using Non-Volatile Memory Express (NVMe) Flash protocol, can overheat due to continuous operation, leading to thermal throttling and performance degradation, and existing methods for managing overheating are inadequate as they may overload substitute controllers and delay re-routing of I/O operations, causing further heat issues and performance degradation.
Innovation Solution
An I/O processing engine monitors temperature conditions across a cluster of storage controllers, identifies overheated controllers, suspends their I/O queues, and dynamically allocates additional queues to a substitute controller with lower temperatures to reroute operations, thereby preventing overloading and ensuring timely intervention when the overheated controller cools down.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If storage controllers continuously operate to maintain system productivity, then productivity is improved, but temperature increases leading to thermal throttling and performance degradation
Solution Approach 1:
The system proactively monitors temperature conditions and identifies overheated storage controllers before they cause system failures. By detecting temperature thresholds in advance and preemptively redistributing I/O operations, the system prevents thermal throttling and maintains continuous productivity without waiting for actual performance degradation to occur.
2Temperature
If I/O operations are rerouted to substitute controllers when overheating occurs, then the overheated controller can cool down, but substitute controllers may become overloaded causing further performance degradation
Solution Approach 1:
The system implements load shedding by suspending non-critical I/O queues on substitute controllers rather than transferring all queues. This partial action approach prevents overloading substitute controllers while still providing sufficient cooling capacity to the overheated controller. The system selectively redirects only the necessary portion of I/O operations to maintain thermal balance without compromising overall system performance.
3Reliability
If temperature monitoring and dynamic load redistribution is implemented, then thermal management is improved, but device complexity increases
Solution Approach 1:
The storage controller cluster implements self-service thermal management through automated temperature monitoring and dynamic I/O queue redistribution. The system autonomously detects overheated controllers, identifies suitable substitute controllers, and reallocates I/O operations without requiring external intervention or complex manual configuration. This self-managing approach improves reliability while minimizing the operational complexity burden on system administrators.
Data Source
AI summary
Storage system comprises a cluster of storage controllers communicatively coupled to a storage device. Each storage controller is associated with a storage namespace in the storage device to process I/O operations of associated storage namespace. An I/O processing engine allocates I/O queues to each storage controller from the cluster of storage controllers for processing I/O operations of the associated storage namespace. The I/O processing engine is to identify a heated controller from the cluster of storage controllers based on temperature data corresponding to the cluster of storage controllers and suspend I/O queues handled by the heated controller. The I/O processing engine is to select a substitute controller based on the temperature data, associate the substitute controller with the storage namespace of the heated controller and allocate additional I/O queues to the substitute controller for processing the I/O operations for the storage namespace.


