Multi-Queue Fair Queuing
Talkat USENIX ATC '19 · on Thursday, 2019-07-11· at 09:45· USENIX ATC Track II: Grand Ballroom VII–IX·
summary
A scalable fair I/O scheduler called MQFQ is implemented in Linux 4.15 and adapts Start-Time Fair Queueing to multi-queue devices by allowing bounded reordering via a throttling threshold T. It uses lock-free structures (a token tree and a lottery “me indicator”) to track in-flight requests without heavy coherence traffic. Evaluated on NVMf, it reaches 3.1M IOPS and cuts antagonist slowdown (FlashX 3.78x→1.33x, Aerospike 6.57x→1x).
AI-written summary · about
chapters (8)
- 0:00Intro
- 0:28Conventional 1/0 Design
- 1:27Multi-Queue I/O Design
- 4:14Multi-Queue Fair Queueing
- 8:10Scalable Implementation
- 9:28Example: Parallelism Utilization
- 11:21Evaluation
- 14:57Conclusion
related talks
41mA Solution to High Latencies Caused by I/O
22mEiffel: Efficient and Flexible Software Packet Scheduling
44mActive Queue Management - What it is, and why you should care
19mSpeeding Up VM’s I/O Sharing Host's io_uring Queues With Guests
30mQueueing Theory, In Practice: Performance Modelling in Cloud-Native Territory [I]
21mNVMe Emulation Performance Optimization
23mScalable Work Submission in Device Virtualization
25mRecent developments in I/O control and testing
