[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ae33dde8-96e8-2978-5f32-c7e0a6136e8e@kernel.dk>
Date: Tue, 5 Oct 2021 06:35:52 -0600
From: Jens Axboe <axboe@...nel.dk>
To: John Garry <john.garry@...wei.com>
Cc: linux-block@...r.kernel.org, linux-kernel@...r.kernel.org,
ming.lei@...hat.com, hare@...e.de, linux-scsi@...r.kernel.org,
kashyap.desai@...adcom.com
Subject: Re: [PATCH v5 00/14] blk-mq: Reduce static requests memory footprint
for shared sbitmap
On 10/5/21 4:23 AM, John Garry wrote:
> Currently a full set of static requests are allocated per hw queue per
> tagset when shared sbitmap is used.
>
> However, only tagset->queue_depth number of requests may be active at
> any given time. As such, only tagset->queue_depth number of static
> requests are required.
>
> The same goes for using an IO scheduler, which allocates a full set of
> static requests per hw queue per request queue.
>
> This series changes shared sbitmap support by using a shared tags per
> tagset and request queue. Ming suggested something along those lines in
> v1 review. In using a shared tags, the static rqs also become shared,
> reducing the number of sets of static rqs, reducing memory usage.
>
> Patch "blk-mq: Use shared tags for shared sbitmap support" is a bit big,
> and could potentially be broken down. But then maintaining ability to
> bisect becomes harder and each sub-patch would get more convoluted.
>
> For megaraid sas driver on my 128-CPU arm64 system with 1x SATA disk, we
> save approx. 300MB(!) [370MB -> 60MB]
>
> Baseline is 1b2d1439fc25 (block/for-next) Merge branch 'for-5.16/io_uring'
> into for-next
Let's get this queued up for testing, thanks John.
--
Jens Axboe
Powered by blists - more mailing lists