[lkml]   [2018]   [Oct]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: [PATCHSET v3 0/16] blk-mq: Add support for multiple queue maps
On Tue, Oct 30, 2018 at 12:32:36PM -0600, Jens Axboe wrote:
> This series adds support for multiple queue maps for blk-mq.
> Since blk-mq was introduced, it's only support a single queue
> map. This means you can have 1 set of queues, and the mapping
> purely depends on what CPU an IO originated from. With this
> patch set, drivers can implement mappings that depend on both
> CPU and request type - and they can have multiple sets of mappings.
> NVMe is used as a proof of concept. It adds support for a separate
> write queue set. One way to use this would be to limit the number
> of write queues to favor reads, since NVMe does round-robin service
> of queues. An easy extension of this would be to add multiple
> sets of queues, for prioritized IO.
> NVMe also uses this feature to finally make the polling work
> efficiently, without triggering interrupts. This both increases
> performance (and decreases latency), at a lower system load. At
> the same time it's more flexible, as you don't have to worry about
> IRQ coalescing and redirection to avoid interrupts disturbing the
> workload. This is how polling should have worked from day 1.
> This is on top of my mq-conversions branch. It can also be bound
> in my mq-maps branch.

Looks good to me. For the series:

Reviewed-by: Keith Busch <>

 \ /
  Last update: 2018-10-30 19:38    [W:0.185 / U:1.060 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site