On Tue, 2012-09-25 at 20:42 +0200, Borislav Petkov wrote: > Right, so why did we need it all, in the first place? There has to be > some reason for it.
Easy. Take two communicating tasks. Is an affine wakeup a good idea? It depends on how much execution overlap there is. Wake affine when there is overlap larger than cache miss cost, and you just tossed throughput into the bin. select_idle_sibling() was originally about shared L2, where any overlap was salvageable. On modern processors with no shared L2, you have to get past the cost, but the gain is still there. Intel wins with loads that AMD loses very bady on, so I can only guess that Intel must feed caches more efficiently. Dunno. It just doesn't matter though, point is that there is a win to be had in both cases, the breakeven just isn't at the same point. -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/