Re: [rfc] direct IO submission and completion scalability issues

!MAILaRCHIVE_VOTE_RePLACE
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Nick Piggin <npiggin@...>
Cc: Siddha, Suresh B <suresh.b.siddha@...>, <linux-kernel@...>, <arjan@...>, <mingo@...>, <ak@...>, <jens.axboe@...>, <James.Bottomley@...>, <andrea@...>, <clameter@...>, <akpm@...>, <andrew.vasquez@...>, <willy@...>, Zach Brown <zach.brown@...>
Date: Sunday, February 3, 2008 - 10:10 pm

On Sun, Feb 03, 2008 at 10:52:52AM +0100, Nick Piggin wrote:

Hi Nick,

When Matthew was describing this work at an LCA presentation (not
sure whether you were at that presentation or not), Zach came up
with the idea that allowing the submitting application control the
CPU that the io completion processing was occurring would be a good
approach to try.  That is, we submit a "completion cookie" with the
bio that indicates where we want completion to run, rather than
dictating that completion runs on the submission CPU.

The reasoning is that only the higher level context really knows
what is optimal, and that changes from application to application.
The "complete on the submission CPU" policy _may_ be more optimal
for database workloads, but it is definitely suboptimal for XFS and
transaction I/O completion handling because it simply drags a bunch
of global filesystem state around between all the CPUs running
completions. In that case, we really only want a single CPU to be
handling the completions.....

(Zach - please correct me if I've missed anything)

Looking at your patch - if you turn it around so that the
"submission CPU" field can be specified as the "completion cpu" then
I think the patch will expose the policy knobs needed to do the
above. Add the bio -> rq linkage to enable filesystems and DIO to
control the completion CPU field and we're almost done.... ;)

Cheers,

Dave.
-- 
Dave Chinner
Principal Engineer
SGI Australian Software Group
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[rfc] direct IO submission and completion scalability issues, Siddha, Suresh B, (Fri Jul 27, 9:21 pm)
Re: [rfc] direct IO submission and completion scalability is..., David Chinner, (Sun Feb 3, 10:10 pm)
Re: [rfc] direct IO submission and completion scalability is..., Christoph Lameter, (Mon Jul 30, 2:20 pm)