Non-volatile Cache Remote Direct Access via PCIe Switch
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The existing data transmission systems in computing, particularly those using non-volatile cache and RDMA, face scalability issues due to bandwidth limitations in PCIe root complex and host local memory, leading to bottlenecks as the number of storage systems increases, requiring a solution to enhance data access efficiency.
Innovation Solution
Implementing a remote direct access mode at the non-volatile cache controller that allows direct data transfer between the non-volatile cache and NIC via PCIe switch, using a direct data engine and arbitrator to manage traffic, thereby bypassing the host and PCIe root complex, and utilizing a direct access manager to control switch configurations and data transfer commands.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If data transfer goes through PCIe root complex and host local memory, then data access is simple and controlled, but bandwidth limitations cause bottlenecks as storage systems increase
Solution Approach 1:
The patent segments the data transfer path by introducing a PCIe switch that separates host-accessible storage from direct storage-to-storage access. The switch creates independent data paths: one through the host (for simplicity) and another direct path between storage devices (for high bandwidth), allowing simultaneous operation of both paths without interfering with each other.
Solution Approach 2:
The PCIe switch acts as an intermediary device that enables direct data transfer between storage systems while maintaining host control. It mediates between the simple host-controlled access model and the high-performance direct access requirement, allowing storage devices to communicate directly when needed while still being accessible through the host when required.
2Productivity
If direct data transfer between non-volatile cache and NIC is implemented, then bandwidth bottlenecks are alleviated, but switch configuration and traffic arbitration complexity increases
Solution Approach 1:
The system dynamically configures the PCIe switch based on traffic requirements. The switch can adapt its routing configuration in real-time, directing traffic through appropriate paths (direct cache-to-NIC or through host) depending on the current operation, thereby optimizing throughput without permanent complex wiring.
Solution Approach 2:
The non-volatile cache controller includes an integrated arbitrator that autonomously manages traffic arbitration and switch configuration. This self-service capability eliminates the need for external complex control systems, as the controller itself makes intelligent decisions about data routing based on incoming requests.
3Adaptability or versatility
If multiple storage systems access non-volatile cache simultaneously, then storage capacity and redundancy are improved, but bandwidth limitations in PCIe root complex reduce access speed
Solution Approach 1:
The patent adds a new dimension to the data access architecture by introducing direct PCIe paths between storage devices and the cache, bypassing the traditional host-mediated path. This creates a parallel access dimension where multiple storage systems can simultaneously access the cache at high speed without competing for host bandwidth resources.
Data Source
AI summary
A system and method of providing direct data access between a non-volatile cache and a NIC in a computing system. A system is disclosed that includes a processing core embedded in a controller that controls a non-volatile cache; and a direct access manager for directing the processing core, wherein the direct access manager includes: a switch configuration system that includes logic to control a switch for either a remote direct access mode or a host access mode, wherein the switch couples each of the NIC, a local bus, and the non-volatile cache; a command processing system that includes logic to process data transfer commands; and a data transfer system that includes logic to manage the flow of data directly between the non-volatile cache and the NIC.


