Messages in this thread | | | Date | Sun, 14 Feb 2010 00:07:35 +0530 | From | Vaidyanathan Srinivasan <> | Subject | Re: change in sched cpu_power causing regressions with SCHED_MC |
| |
* Peter Zijlstra <peterz@infradead.org> [2010-02-13 11:42:04]:
> On Sat, 2010-02-13 at 11:36 +0100, Peter Zijlstra wrote: > > On Fri, 2010-02-12 at 17:31 -0800, Suresh Siddha wrote: > > > > > > We have one more problem that Yanmin and Ling Ma reported. On a dual > > > socket quad-core platforms (for example platforms based on NHM-EP), we > > > are seeing scenarios where one socket is completely busy (with all the 4 > > > cores running with 4 tasks) and another socket is completely idle. > > > > > > This causes performance issues as those 4 tasks share the memory > > > controller, last-level cache bandwidth etc. Also we won't be taking > > > advantage of turbo-mode as much as we like. We will have all these > > > benefits if we move two of those tasks to the other socket. Now both the > > > sockets can potentially go to turbo etc and improve performance. > > > > > > In short, your recent change (shown below) broke this behavior. In the > > > kernel summit you mentioned you made this change with out affecting the > > > behavior of SMT/MC. And my testing immediately after kernel-summit also > > > didn't show the problem (perhaps my test didn't hit this specific > > > change). But apparently we are having performance issues with this patch > > > (Ling Ma's bisect pointed to this patch). I will look more detailed into > > > this after the long weekend (to see if we can catch this scenario in > > > fix_small_imbalance() etc). But wanted to give you a quick heads up. > > > Thanks. > > > > Right, so the behaviour we want should be provided by SD_PREFER_SIBLING, > > it provides the capacity==1 thing the cpu_power games used to provide. > > > > Not saying it's not broken, but that's where the we should be looking to > > fix it. > > > BTW, do you think its possible to automate such test cases and put them > in a test-suite?
Linux Test Project (LTP) has some test cases for sched_mc/smt balancing. They can be improved and generalized to include all basic scheduler task placement checks.
--Vaidy
| |