D2FQ: Device-Direct Fair Queueing for NVMe SSDs
summary
D2FQ offloads fair queueing to NVMe device-side WRR by mapping WRR’s three priority classes to fast/moderate/slow queues and dispatching each I/O immediately so submit=dispatch, eliminating the submit–arbitrate–dispatch path in the kernel. Prototype lives in the Linux kernel, uses a Samsung NVMe SSD with WRR, and runs fio and YCSB/rocksdb tests. A dynamic HL-ratio tunes queue speed; results show maintained weight-proportional fairness while saving up to 45% CPU versus MQFQ.
AI-written summary · about
