Host Request Pacing for Storage Class Memory Throughput
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Storage class memory (SCM) systems face issues with host request pacing due to performance differences between high-speed host interfaces and slower media resources like NAND Flash, leading to resource imbalances, backlogs, and timeouts, especially during garbage collection and error recovery.
Innovation Solution
Implementing a method to determine pacing requirements based on thresholds, setting a pacing delay level, and managing host requests using queues to balance throughput and resource utilization, with hardware-controlled delays for write requests and read responses to prevent data integrity issues and optimize performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If host requests are processed at high speed through the interface, then throughput is improved, but resource imbalances and timeouts occur due to slower media resources
Solution Approach 1:
The patent implements periodic pacing delays in request processing to synchronize host request rates with media resource processing rates. The controller introduces controlled waiting periods between request batches, creating a rhythmic flow that matches the slower media resources' processing capability while maintaining high overall throughput.
Solution Approach 2:
The system employs feedback mechanisms where the controller monitors media resource status and dynamically adjusts pacing delays based on current workload and resource availability. This closed-loop control ensures requests are paced appropriately to match actual processing capacity, preventing both resource exhaustion and unnecessary delays.
2Reliability
If request pacing delays are implemented to balance resources, then resource utilization is improved, but processing time increases
Solution Approach 1:
The patent applies partial pacing delays only when necessary to balance resource utilization, rather than applying uniform delays to all requests. The controller selectively introduces delays based on real-time resource status, applying the minimum necessary pacing to achieve balance while maximizing overall processing speed.
Solution Approach 2:
The pacing delay parameters are dynamically adjusted based on current system conditions including media resource availability, request queue depth, and processing rates. This dynamic adaptation allows the system to minimize delays during low-utilization periods while enforcing appropriate pacing during high-load conditions.
3Productivity
If write requests are processed continuously, then productivity is improved, but data integrity issues occur during garbage collection and error recovery
Solution Approach 1:
The system implements preliminary anti-action by proactively pausing write request processing when garbage collection or error recovery operations are detected or anticipated. The controller preemptively introduces pacing delays before data integrity issues can arise, preventing conflicts between write operations and media maintenance activities.
Solution Approach 2:
The controller acts as an intermediary between the host interface and media resources, mediating write request flow to ensure data integrity. It introduces intelligent pacing that coordinates write operations with garbage collection and error recovery processes, allowing both high throughput and data integrity to be maintained simultaneously.
Data Source
AI summary
Methods, computer program products, and/or systems are provided that perform the following operations: determining a pacing requirement for host requests based on one or more thresholds; setting a pacing delay level based on the one or more thresholds in response to the determination of the pacing requirement; and implementing a memory request flow for a host request based on the pacing requirement and the pacing delay level.


