All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2 0/3]CFQ: add think time check for service tree and group
@ 2011-07-12  1:37 Shaohua Li
  2011-07-12 12:15 ` Vivek Goyal
  2011-07-12 12:26 ` Jens Axboe
  0 siblings, 2 replies; 3+ messages in thread
From: Shaohua Li @ 2011-07-12  1:37 UTC (permalink / raw)
  To: lkml; +Cc: Jens Axboe, Vivek Goyal

Hi,
  Currently when the last queue of a service tree/group is empty, CFQ
doesn't expire the queue. This is to allow requests from the tree/group
come soon, so tree/group doesn't miss its share. But if the think time
is big, the assumption isn't correct. idling the queue is just wasting
bandwidth.

Originally I was hoping this can resolve Vivek's fsync issue, but it
doesn't. The fsync issue is caused by queue idling. But since think time
check only helps for think time above default queue idle time (8ms),
think time check doesn't help for the fsync issue.

On the other hand, think time check is still helpful for queues with
think time. I had test case in follow patches show throughput
improvement without sacrifice tree/group shares.

v1->v2:
1. addressed some good comments from Vivek
2. add more test to make sure the patches don't change behavior of
queues without think time.

Thanks,
Shaohua


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH v2 0/3]CFQ: add think time check for service tree and group
  2011-07-12  1:37 [PATCH v2 0/3]CFQ: add think time check for service tree and group Shaohua Li
@ 2011-07-12 12:15 ` Vivek Goyal
  2011-07-12 12:26 ` Jens Axboe
  1 sibling, 0 replies; 3+ messages in thread
From: Vivek Goyal @ 2011-07-12 12:15 UTC (permalink / raw)
  To: Shaohua Li; +Cc: lkml, Jens Axboe

On Tue, Jul 12, 2011 at 09:37:52AM +0800, Shaohua Li wrote:
> Hi,
>   Currently when the last queue of a service tree/group is empty, CFQ
> doesn't expire the queue. This is to allow requests from the tree/group
> come soon, so tree/group doesn't miss its share. But if the think time
> is big, the assumption isn't correct. idling the queue is just wasting
> bandwidth.
> 
> Originally I was hoping this can resolve Vivek's fsync issue, but it
> doesn't. The fsync issue is caused by queue idling. But since think time
> check only helps for think time above default queue idle time (8ms),
> think time check doesn't help for the fsync issue.
> 
> On the other hand, think time check is still helpful for queues with
> think time. I had test case in follow patches show throughput
> improvement without sacrifice tree/group shares.
> 
> v1->v2:
> 1. addressed some good comments from Vivek
> 2. add more test to make sure the patches don't change behavior of
> queues without think time.

This patch series looks good to me. Thanks Shaohua. We still shall have
to do something about fsync issue though in groups.

Acked-by: Vivek Goyal <vgoyal@redhat.com>

Thanks
Vivek

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH v2 0/3]CFQ: add think time check for service tree and group
  2011-07-12  1:37 [PATCH v2 0/3]CFQ: add think time check for service tree and group Shaohua Li
  2011-07-12 12:15 ` Vivek Goyal
@ 2011-07-12 12:26 ` Jens Axboe
  1 sibling, 0 replies; 3+ messages in thread
From: Jens Axboe @ 2011-07-12 12:26 UTC (permalink / raw)
  To: Shaohua Li; +Cc: lkml, Vivek Goyal

On 2011-07-12 03:37, Shaohua Li wrote:
> Hi,
>   Currently when the last queue of a service tree/group is empty, CFQ
> doesn't expire the queue. This is to allow requests from the tree/group
> come soon, so tree/group doesn't miss its share. But if the think time
> is big, the assumption isn't correct. idling the queue is just wasting
> bandwidth.
> 
> Originally I was hoping this can resolve Vivek's fsync issue, but it
> doesn't. The fsync issue is caused by queue idling. But since think time
> check only helps for think time above default queue idle time (8ms),
> think time check doesn't help for the fsync issue.
> 
> On the other hand, think time check is still helpful for queues with
> think time. I had test case in follow patches show throughput
> improvement without sacrifice tree/group shares.
> 
> v1->v2:
> 1. addressed some good comments from Vivek
> 2. add more test to make sure the patches don't change behavior of
> queues without think time.

I applied 1-3, thanks. 1 was hand applied, since it didn't apply
directly to for-3.1/core after I merged Justins patch to get rid of the
meta data request special treatment.

-- 
Jens Axboe


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2011-07-12 12:26 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-07-12  1:37 [PATCH v2 0/3]CFQ: add think time check for service tree and group Shaohua Li
2011-07-12 12:15 ` Vivek Goyal
2011-07-12 12:26 ` Jens Axboe

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.