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? > >> 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/