[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <550B30D5.9080207@kernel.dk>
Date: Thu, 19 Mar 2015 14:25:57 -0600
From: Jens Axboe <axboe@...nel.dk>
To: Tejun Heo <tj@...nel.org>, kent.overstreet@...il.com,
Benjamin LaHaise <bcrl@...ck.org>
CC: linux-kernel@...r.kernel.org
Subject: Re: serial percpu_ref draining in exit_aio()
On 03/19/2015 11:34 AM, Tejun Heo wrote:
> Hello,
>
> So, Jens noticed that fio process exiting takes seconds when there are
> multiple aio contexts and the culprit seems to be the serial
> percpu_ref draining in exit_aio(). It's generally a bad idea to
> expose RCU latencies to userland because they add up really quickly
> and are unrelated to other performance parameters. Can you guys
> please at least update the code so that it waits for all percpu_refs
> to drain at the same time rather than one after another? That should
> resolve the worst part of the problem.
This works for me. Before:
real 0m5.872s
user 0m0.020s
sys 0m0.040s
after
real 0m0.246s
user 0m0.020s
sys 0m0.040s
It solves the exit_aio() issue, but if the app calls io_destroy(), then
we are back to square one...
--
Jens Axboe
View attachment "aio-exit-parallel.patch" of type "text/x-patch" (1687 bytes)
Powered by blists - more mailing lists