Messages in this thread | | | Subject | Re: [RFD] I/O scheduling in blk-mq | From | Bart Van Assche <> | Date | Mon, 8 Aug 2016 08:26:05 -0700 |
| |
On 08/08/16 07:09, Paolo wrote: > 2) To provide per-process service guarantees, an I/O scheduler must > create per-process internal queues. BFQ and CFQ use I/O contexts to > achieve this goal. Is something like that (or exactly the same) > available also in blk-mq? If so, do you have any suggestion, or link to > documentation/code on how to use what is available in blk-mq?
Hello Paolo,
I/O contexts are, by definition, data structures that are shared by multiple I/O queues. blk-mq reaches high performance by keeping each per-CPU queue independent. This means that using I/O contexts in a blk-mq I/O scheduler would introduce a contention point and probably also a performance bottleneck. So I would appreciate it if multiqueue schedulers would avoid constructs similar to I/O contexts.
Thanks,
Bart.
| |