[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <53C33275.1000900@linux.vnet.ibm.com>
Date: Mon, 14 Jul 2014 09:29:25 +0800
From: Michael wang <wangyun@...ux.vnet.ibm.com>
To: Rik van Riel <riel@...hat.com>,
Mike Galbraith <umgwanakikbuti@...il.com>
CC: Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...nel.org>, Alex Shi <alex.shi@...aro.org>,
Paul Turner <pjt@...gle.com>, Mel Gorman <mgorman@...e.de>,
Daniel Lezcano <daniel.lezcano@...aro.org>,
LKML <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] sched: select 'idle' cfs_rq per task-group to prevent
tg-internal imbalance
On 07/12/2014 12:11 AM, Rik van Riel wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
[snip]
>>
>> That's full wake balance.. if that was cheap,
>> select_idle_sibling() would not exist.
>
> Full wake balance iterates over all the groups in the system,
> select_idle_sibling only over one LLC domain.
Furthermore, balance will calculate the load and do comparison, which
cost many cycles, while select_idle_sibling() just check idle status.
>
> If no CPU in the LLC domain is idle, select_idle_sibling will
> iterate over all of them.
Just the first cpu of groups, for example the cpu0:
sd1:
tg0 tg1
cpu0 cpu1 cpu2 cpu3
sd0:
tg0 tg1
cpu0 cpu1
The thing we'll check is:
sd1:
idle_cpu(0) //busy
idle_cpu(2) //busy
sd0:
idle_cpu(0) //busy
That's really cheap compared with balance path...
During this iteration, which the
> code already does, it should be possible to identify the least
> loaded of the CPUs and pick that one.
That will make select_idle_sibling() more close to balance path(just the
start domain lower), IMHO this seems like not such a good idea... what
we gain doesn't worth the overhead.
But if we have testing show this modify could benefit most of the
workloads (I don't think so but who knows...), then we'll have the
reason to add some load comparison logical inside that quick path ;-)
Regards,
Michael Wang
>
> - --
> All rights reversed
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1
> Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/
>
> iQEcBAEBAgAGBQJTwAzBAAoJEM553pKExN6DlrEH/RKQPdAdMFK/pxZ/2f9TCXFK
> Vq25LWZeJQhNOrH3Q6VzTTfAG06O8+Bjxfb+SR6BOHCtD4kCBqaBdwVVUDXC+MbK
> NdBa3GtCT3ahvguiYLPEHL1vugND2yzHUgnr9EhUgk6zhnLxfvhIIJj7uv+ZRsri
> o8DsLrIG1jqDGVbbu5ssZ37w6cldoFBw0FAHcVAquoM2SP+/MuatW1SCkRP31IVL
> q0dssP1CD0Nkecz+S6WSI59c0Wt0c73oWNg/q41a/kha7RI1J5VF5yNFacq/uL0g
> Xxyb0mOiJarqMtzuq5ItlOiTry+BpqY1jFhN5ZhFjt9mtvpTR1C/tcXpOw77y0Y=
> =BEJk
> -----END PGP SIGNATURE-----
> --
> 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/
>
--
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