[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <3f44d1dc-6b81-9f51-9e2d-68f1faba1684@kernel.dk>
Date: Wed, 30 May 2018 10:48:50 -0600
From: Jens Axboe <axboe@...nel.dk>
To: Jianchao Wang <jianchao.w.wang@...cle.com>, osandov@...ndov.com
Cc: linux-block@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH V3 0/2] block: kyber: make kyber more friendly with
merging
On 5/30/18 1:26 AM, Jianchao Wang wrote:
> Hi Jens
>
> This is the 3rd version patchset to make the kyber io scheduler more firendly
> with merging.
>
> Most of time, kyber io scheduler will not leave any requests in ctx rq_list,
> this is because even if tokens of one domain is used up, kyber will try to
> dispatch requests from other domain and flush the rq_list there. So there is not
> any change to do merge.
>
> To improve this, setup kyber_ctx_queue (kcq) which is similar with blk_mq_ctx but has
> rq_list for every domain, and build mapping between kcq and khd as ctx and hctx.
> Then we could merge, insert and dispatch on rq_list of different domains separately.
> At the same time, only flush the rq_list of kcq after get domain token
> successfully, then the requests could be left in the rq_list of that domain and
> maybe merged with following io. In my local test on NVMe card, the sequential io
> performance could be improved a lot, especially on high workload. More details
> please refer to the second patch.
Great work, thanks Jianchao - applied for 4.18.
--
Jens Axboe
Powered by blists - more mailing lists