On 2014/5/26 22:19, Mike Galbraith wrote: > On Mon, 2014-05-26 at 20:16 +0800, Libo Chen wrote: >> On 2014/5/26 13:11, Mike Galbraith wrote: > >>> Your synthetic test is the absolute worst case scenario. There has to >>> be work between wakeups for select_idle_sibling() to have any chance >>> whatsoever of turning in a win. At 0 work, it becomes 100% overhead. >> >> not synthetic, it is a real problem in our product. under no load, waste >> much cpu time. > > What happens in your product if you apply the commit I pointed out?
under no load, cpu usage is up to 60%, but the same apps cost 10% on susp sp1. The apps use a lot of timer. I am not sure that commit is the root cause, but they do have some different cpu usage between 3.4.24 and suse sp1, e.g. my synthetic test before. > >>>> so I think 15% cpu usage and migration event are too high, how to fixed? >>> >>> You can't for free, low latency wakeup can be worth one hell of a lot. >>> >>> You could do a decayed hit/miss or such to shut the thing off when the >>> price is just too high. Restricting migrations per unit time per task >>> also helps cut the cost, but hurts tasks that could have gotten to the >>> CPU quicker, and started your next bit of work. Anything you do there >>> is going to be a rob Peter to pay Paul thing. >>> >> >> I had tried to change sched_migration_cost and sched_nr_migrate in /proc, >> but no use. any other suggestion? >> >> I still think this is a problem to schedular. it is better to directly solve >> this issue instead of a workaroud > > I didn't say it wasn't a problem, it is. I said whatever you do will be > a tradeoff. > > -Mike > > > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/