Network Interface Card Cache Management for I/O Latency Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional storage systems face inefficiencies in processing input/output requests due to the reliance on host processors for cache operations, leading to suboptimal caching performance and increased latency.
Innovation Solution
A method and system where a network interface card (NIC) maintains a cache entry data structure with a sync word to determine cache hits and misses, allowing it to process read requests from both host memory and storage devices without involving the host processor, thereby offloading cache operations and improving caching efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the host processor processes all cache operations for read requests, then the system maintains simple architecture, but the processing latency increases and throughput decreases
Solution Approach 1:
The NIC is equipped with cache memory and logic to independently determine cache hits and retrieve data without requiring host processor intervention. The NIC autonomously manages its own cache operations, including checking cache entries, detecting cache hits, and retrieving data from cache or host memory, thereby serving itself rather than relying on the host processor for every I/O request.
Solution Approach 2:
The system divides the cache operation processing function into two independent parts: the NIC handles cache-related operations (checking cache entries, retrieving cached data) using its integrated cache memory, while the host processor handles non-cache operations. This segmentation allows parallel processing and reduces the host processor's workload.
2Loss of time
If the NIC independently processes read requests with integrated cache memory, then the processing latency decreases and throughput improves, but the device complexity increases
Solution Approach 1:
The patent combines the cache memory and cache management logic directly into the NIC, merging previously separate functions (NIC data reception and cache operations) into a single integrated unit. This consolidation enables the NIC to autonomously handle cache operations, reducing latency by eliminating host processor involvement in the critical path of cache hits.
3Productivity
If the NIC checks cache entries for every read request, then the caching efficiency improves, but the processing complexity at the NIC increases
Solution Approach 1:
The NIC autonomously manages its cache by independently checking cache entries against incoming read requests, determining cache hits without host processor involvement. The NIC self-manages the complexity of cache operations including entry validation, hit detection, and data retrieval, converting what would be host processor complexity into NIC internal complexity that can be handled in hardware.
Data Source
AI summary
A computing device having a host memory and a host processor for executing instructions out of the host memory; and a network interface card interfacing with the computing device are provided. When there is a cache hit for a read request, the network interface card processes the read request by obtaining data stored from one or both of the host memory and a storage device that the network interface card accesses without involving the host processor and when there are is a cache miss, then the read request is processed by the host processor.


