[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Pine.LNX.4.64.0709190944560.11561@tongli.jf.intel.com>
Date: Wed, 19 Sep 2007 10:06:44 -0700 (PDT)
From: Tong Li <tong.n.li@...el.com>
To: Mike Galbraith <efault@....de>
cc: Tong Li <tong.n.li@...el.com>, Ingo Molnar <mingo@...e.hu>,
dimm <dmitry.adamushko@...il.com>, linux-kernel@...r.kernel.org,
Srivatsa Vaddagiri <vatsa@...ux.vnet.ibm.com>,
Peter Zijlstra <a.p.zijlstra@...llo.nl>
Subject: Re: [git] CFS-devel, group scheduler, fixes
On Wed, 19 Sep 2007, Mike Galbraith wrote:
> On Wed, 2007-09-19 at 09:51 +0200, Mike Galbraith wrote:
>
>> The scenario which was previously cured was this:
>> taskset -c 1 nice -n 0 ./massive_intr 2 9999
>> taskset -c 1 nice -n 5 ./massive_intr 2 9999
>> click link
>> (http://pages.cs.wisc.edu/~shubu/talks/cachescrub-prdc2004.ppt) to bring
>> up browser and OpenOffice Impress.
>>
>> Xorg (at nice -5 + above scenario) latency samples:
>> se.wait_max : 57985337
>> se.wait_max : 25163510
>> se.wait_max : 37005538
>> se.wait_max : 66986511
>> se.wait_max : 53990868
>> se.wait_max : 80976761
>> se.wait_max : 96967501
>> se.wait_max : 80989254
>> se.wait_max : 53990897
>> se.wait_max : 181963905
>> se.wait_max : 85985181
>
> To be doubly sure of the effect on the pinned tasks + migrating Xorg
> scenario, I just ran the above test 10 times with virgin devel source.
> Maximum Xorg latency was 20ms.
>
> -Mike
>
Yeah, the patch was a first attempt at getting better global fairness for
unpinned tasks. I expected there'd be latency problems when unpinned and
pinned tasks co-exist. The original code for vruntime adjustment in
set_task_cpu() helped alleviate this problem, so removing it in my patch
would definitely bring the problem back. On the other hand, leaving it
there broke global fairness in my fairness benchmark. So we'd need a
better compromise.
Were the experiments run on a 2-CPU system? When Xorg experiences large
wait time, is it on the same CPU that has the two pinned tasks? If this is
the case, then the problem could be X somehow advanced faster and got a
larger vruntime then the two pinned tasks, so it had to wait for the
pinned ones to catch up before it got a chance to be scheduled.
tong
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists