Re: [RFC]block: add a new flag to make request complete onsubmitted cpu

From: Jens Axboe
Date: Mon Dec 21 2009 - 04:10:38 EST


On Mon, Dec 21 2009, Shaohua Li wrote:
> We already have a QUEUE_FLAG_SAME_COMP, which makes request complete
> on the first cpu of a mc/ht, but this isn't sufficient. In a system
> with fast block devices (intel SSD), it turns out the first cpu is
> bottlenect. Add a flag to make request complete on cpu where request
> is submitted. The flag implies QUEUE_FLAG_SAME_COMP. By default, it is off.

It was a lazy trick to avoid doing any round robin work in there.

> My test machine has two CPUs and 4 intel SSD. Without the new flag,
> the io thoughput is about 400m/s; with it, the thoughput is about 500m/s.

So I think we should just fix it, I still think the group logic makes
sense. But instead of always going for the first one, let it complete
locally if part of the group, if not send to specific submitter CPU.

--
Jens Axboe

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/