NVMe Over Fabrics In-Capsule Command Execution
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current NVMe technologies face inefficiencies in data transmission and latency when accessing non-volatile storage over networks, particularly due to queuing mechanisms that delay write commands and consume resources, and lack a high-performance path for in-capsule data commands.
Innovation Solution
NVMe over Fabrics introduces a fabric-based architecture that bypasses submission queues for certain commands, allowing immediate execution and data processing, and uses command and response capsules to optimize data transmission, including Scatter-Gather Lists for efficient data handling, and performs data integrity checks to manage queuing and resource utilization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If NVMe over Fabrics uses traditional submission queues for command processing, then command execution can be managed in order, but data transmission latency increases and processing speed decreases
Solution Approach 1:
The patent segments command processing into two distinct paths: traditional submission queue processing for standard commands, and a new high-performance direct processing path for in-capsule data commands. This segmentation allows different command types to be handled through optimized routes, improving overall processing speed while maintaining order for commands that require it.
Solution Approach 2:
The patent introduces an intermediary mechanism (the fabric interface with in-capsule data support) that enables commands containing their own data to bypass the traditional submission queue. This intermediary path acts as a mediator between the fabric interface and command execution, reducing latency for specific command types without affecting the overall queue management system.
2Productivity
If NVMe over Fabrics implements comprehensive queuing mechanisms for all commands, then command ordering is maintained, but resource utilization decreases and processing efficiency drops
Solution Approach 1:
The patent implements a dynamic command processing system that adapts the queuing mechanism based on command characteristics. Commands with in-capsule data dynamically bypass the submission queue, while other commands continue through traditional queuing. This dynamic approach optimizes processing efficiency by reducing unnecessary queuing operations while maintaining system manageability through selective path selection.
3Reliability
If NVMe over Fabrics processes all commands through the submission queue, then command execution order is preserved, but data transmission efficiency decreases
Solution Approach 1:
The patent applies local quality optimization by providing different processing treatments to different command types based on their specific requirements. Commands with in-capsule data receive expedited direct processing, while other commands maintain traditional queue processing. This localized optimization preserves execution order where needed while maximizing transmission efficiency for appropriate command types.
Data Source
AI summary
Systems and methods for fast execution of in-capsule commands are disclosed. NVM Express (NVMe) over fabrics is a standard in which a host device sends commands in a command capsule to a memory device. The memory device then saves the command capsule as an entry to a submission queue, and thereafter fetches the command capsule from the submission queue for execution. In certain instances, such as when the command capsule includes a write command, the memory device may decide to by-pass the submission queue and instead begin execution of the command without fetching the command from the submission queue. In these instances of bypassing, the memory device may instead insert a no-operation entry in the submission queue. Further, the memory device may send a response capsule prior to beginning execution of the command.


