WRR Arbiter Bandwidth Allocation for Multi-Tenant SGL Processing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current data storage systems face increased wait times and system degradation due to the processing of bad Scatter Gather List (SGL) segments, which delays subsequent commands, leading to decreased Quality of Service (QoS).
Innovation Solution
Implementing a Weighted Round Robin (WRR) arbiter to allocate bandwidth to each tenant based on their needs, allowing the controller to process commands concurrently based on allocated bandwidth rather than waiting for previous commands to complete.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the controller processes commands sequentially to completion, then command processing accuracy is improved, but system throughput and Quality of Service deteriorate due to head-of-line blocking
Solution Approach 1:
The patent segments the command processing queue into multiple independent queues, one for each tenant. This allows the controller to process commands from different tenants in parallel rather than sequentially, eliminating head-of-line blocking while maintaining processing accuracy through dedicated queue management for each tenant.
Solution Approach 2:
The patent implements dynamic bandwidth allocation using a Weighted Round Robin (WRR) arbiter that adjusts command processing rates based on allocated bandwidth weights for each tenant. This dynamic approach allows the system to maintain reliability for each tenant while optimizing overall system throughput through flexible resource distribution.
2Reliability
If the controller waits for previous commands to complete before processing subsequent commands, then command processing reliability is improved, but wait time increases and Quality of Service decreases
Solution Approach 1:
By segmenting the command processing into separate tenant queues, the controller can process commands from different tenants concurrently. This eliminates the wait time caused by sequential processing while maintaining reliability through dedicated queue management that ensures each tenant's commands are processed correctly according to their allocated bandwidth.
Solution Approach 2:
The patent enables continuous processing of commands across multiple tenants by allowing the controller to switch between tenant queues based on bandwidth allocation. This continuity eliminates idle wait times while maintaining processing reliability through the WRR arbitration mechanism that ensures fair and consistent command handling for each tenant.
3Reliability
If the controller processes all command portions for a tenant to completion, then tenant data integrity is improved, but other tenants experience increased wait times and system degradation
Solution Approach 1:
The patent segments the command processing system into independent tenant queues, allowing each tenant's commands to be processed separately. This segmentation ensures data integrity for each tenant while enabling parallel processing across tenants, thereby improving overall multi-tenant processing efficiency without compromising individual tenant reliability.
Solution Approach 2:
The patent changes the processing parameter from sequential completion to bandwidth-weighted parallel processing. By adjusting the processing rate according to allocated bandwidth weights, the system maintains data integrity for each tenant while optimizing multi-tenant processing efficiency through controlled parallel execution rather than sequential completion.
4Measurement precision
If the controller implements strict sequential processing of SGL segments, then processing accuracy is improved, but system degradation increases and Quality of Service decreases
Solution Approach 1:
The patent segments SGL processing into tenant-specific queues, allowing accurate processing of each tenant's SGL segments in parallel. This maintains measurement precision for each tenant's data while improving overall command processing speed through concurrent handling of multiple tenants' SGL segments rather than strict sequential processing.
Solution Approach 2:
The patent implements dynamic SGL processing where the controller can switch between different tenants' SGL segments based on bandwidth allocation and queue status. This dynamic approach maintains processing accuracy through proper queue management while significantly improving command processing speed by eliminating idle wait times between SGL segment processing.
Data Source
AI summary
The present disclosure generally relate to improved tenant processing by arbitration of commands. Rather than processing a tenant with multiple portions to completion causing increased wait time for preceding tenants, allowing the controller to process commands based on the respective bandwidth allocated to each tenant is beneficial. Through a Weighted Round Robin (WRR) arbiter, the controller is able to allocate a percentage of the bandwidth to each tenant based on the tenant's needs. Once the bandwidth is allocated to the tenants, the controller may then process portions of the commands from the tenants up to the allocated bandwidth per tenant, which avoids the need for commands that are fetched after earlier commands wait for previous commands to complete their processing, but instead process all command portions based on the allocated bandwidth from the WRR arbiter.


