I/O Splitter for Disaggregated Storage Latency Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Disaggregated storage environments using NVMe SSDs experience increased latency due to network and software processing overhead, particularly in NVMe-oF based storage fabrics, which affects the efficiency of read and write requests.
Innovation Solution
The technology splits large I/O requests into smaller chunks and dynamically adjusts the granularity of work requests to optimize queue sizes and polling rates, reducing latency by utilizing NVMe SSD parallelism and minimizing data storage in memory before forwarding, thereby enhancing processing efficiency across network fabrics.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If data is stored in memory before forwarding in disaggregated storage environments, then data transfer can be performed, but latency increases due to network and software processing overhead
Solution Approach 1:
The patent segments large I/O requests into multiple smaller work requests that can be processed in parallel by multiple CPU cores. This segmentation reduces the processing overhead for each individual request and enables concurrent processing, thereby reducing overall latency in disaggregated storage environments while maintaining data transfer efficiency
Solution Approach 2:
The patent introduces an I/O splitter component that acts as an intermediary between the host and storage devices. This intermediary breaks down large I/O requests into smaller work requests and distributes them across multiple processing queues, reducing software processing overhead and latency without requiring complete data staging in memory before forwarding
2Loss of time
If large I/O requests are processed directly, then bandwidth utilization is maintained, but latency increases due to network and software processing overhead
Solution Approach 1:
The patent segments large I/O requests into multiple smaller work requests that can be processed in parallel. This segmentation transforms a single long-processing task into multiple shorter tasks that can be handled concurrently by different CPU cores, reducing overall processing time and latency while maintaining or even increasing throughput
Solution Approach 2:
The patent dynamically adjusts the granularity of work requests based on system conditions and optimizes queue sizes and polling rates. This dynamic adaptation allows the system to balance between processing efficiency and latency reduction, adjusting the degree of segmentation and processing parallelism based on current workload and resource availability
3Productivity
If queue sizes and polling rates are optimized, then processing efficiency improves, but system complexity increases
Solution Approach 1:
The patent implements dynamic optimization of queue sizes and polling rates based on system conditions and workload characteristics. Rather than using fixed complex configurations, the system adapts these parameters in real-time, simplifying management while maintaining high processing efficiency through automated adjustment based on performance metrics
Data Source
AI summary
Methods and systems for processing input/output (“I/O”) requests in a networked storage environment are disclosed. One method included polling, by a processor, a receive queue at a first polling rate to identify I/O requests received by the receive queue to read data from or write data to a storage device; determining, by the processor that a hit rate has reached a threshold value, the hit rate indicating a number of pending I/O requests at the receive queue, in response to the receive queue being polled at the first polling rate; and modifying, by the processor, the first polling rate to a second polling rate, in response to the hit rate reaching the threshold value.


