since you were, and I hope still are :), considering BFQ as a possible alternative to your
current default I/O scheduler, this is just to update you on current BFQ performance.
I have finally tested BFQ thoroughly also with one of the fastest consumer-grade NVMe SSDs
available, a Samsung SSD 970 PRO. Results  are very good, and let me summarize BFQ
performance as follows.
On any type of storage medium (embedded flash storage, HDDs, SATA or NVMe SSDs, ...), and
on systems ranging from minimal embedded systems to high-end servers, BFQ features:
- Low latency for interactive tasks
Under load, BFQ loads applications up to 20X times as fast as any other I/O scheduler. In
absolute terms, the system is virtually as responsive as if it was idle, regardless of the
background I/O workload. As a concrete example, with writes as background workload on a
Samsung SSD 970 PRO, gnome-terminal starts in 1.8 seconds with BFQ, and in at least 28.7
seconds with the other I/O schedulers.
- Low latency for soft real-time applications
Soft real-time applications, such as audio and video players or audio audio- and
video-streaming applications, enjoy smooth playback or streaming, regardless of the
background I/O workload.
- High throughput
BFQ reaches an I/O throughput equal to or higher than (up to 2X on slower devices) that
reached by the other I/O schedulers.
- From 5x to 10X throughput boost in multi-client applications
BFQ reaches from 5X to 10X higher throughput than any other solution for guaranteeing
per-client bandwidths (in addition to providing strong bandwidth guarantees).
You can find more details, demos and full results in BFQ home .
For any doubt, I'm here.