RDMA NIC Send Queue Performance Isolation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Performance interference occurs when bandwidth-sensitive and latency-sensitive applications are executed on the same RDMA network interface card, leading to suboptimal performance for both types of applications.
Innovation Solution
A performance isolation method is implemented by identifying tenant types and buffering work queue elements into separate groups, using different scheduling algorithms (fair round robin and token bucket) to manage and process latency-sensitive and bandwidth-sensitive work queue elements, ensuring efficient resource utilization and minimizing interference.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If different applications (bandwidth-sensitive and latency-sensitive) are executed on the same RDMA network interface card, then resource utilization is improved, but performance interference occurs between applications
Solution Approach 1:
The patent segments the send queue into separate queues for different application types (bandwidth-sensitive and latency-sensitive applications). This segmentation allows each application type to be processed independently with dedicated scheduling mechanisms, eliminating performance interference while maintaining resource utilization across multiple applications on the same RDMA network interface card.
2Productivity
If bandwidth-sensitive applications are processed continuously, then bandwidth utilization is improved, but latency-sensitive applications experience increased latency
Solution Approach 1:
The patent creates separate processing paths by segmenting the send queue into bandwidth-sensitive and latency-sensitive queues. This allows continuous processing of bandwidth-sensitive applications without blocking latency-sensitive applications, as each queue has its own scheduling mechanism that prioritizes appropriate workloads.
Solution Approach 2:
The patent applies different scheduling algorithms and processing characteristics to different queues based on their specific requirements. Bandwidth-sensitive queues use algorithms optimized for throughput, while latency-sensitive queues use algorithms optimized for low latency, allowing each queue to achieve optimal performance for its specific workload type.
3Device complexity
If a single scheduling algorithm is used for all applications, then device complexity is reduced, but performance isolation between application types is insufficient
Solution Approach 1:
The patent segments the scheduling mechanism into separate schedulers for different application types. Each scheduler is optimized for its specific workload characteristics, providing effective performance isolation. The segmentation is implemented at the queue level, which balances complexity management with effective isolation.
Solution Approach 2:
The patent implements different scheduling algorithms tailored to local requirements of different application types. Bandwidth-sensitive applications receive scheduling optimized for throughput, while latency-sensitive applications receive scheduling optimized for response time, achieving effective performance isolation without requiring complete redesign of the entire scheduling system.
Data Source
AI summary
The present disclosure provides a performance isolation method for a send queue of an RDMA network interface card and an RDMA network interface card. The method includes: buffering, by an RDMA network interface card on a sending side, an identified WQE of a latency-sensitive tenant and an identified WQE of a bandwidth-sensitive tenant into a latency-sensitive group and a bandwidth-sensitive group in a buffering module, respectively; determining, by using an inter-group scheduler, whether to schedule a WQE in a latency-sensitive group or a WQE in a bandwidth-sensitive group; requesting, by a first scheduler, to schedule a latency-sensitive WQE in the latency-sensitive group by using a first scheduling algorithm; scheduling, by a second scheduler, a bandwidth-sensitive WQE in a wait station by using a second scheduling algorithm; transmitting, by the inter-group scheduler, a WQE scheduling result to a WQE processing module on the RDMA network interface card on the sending side.


