On 02/22/2013 04:36 PM, Peter Zijlstra wrote: > On Fri, 2013-02-22 at 10:37 +0800, Michael Wang wrote: >> But that's really some benefit hardly to be estimate, especially when >> the workload is heavy, the cost of wake_affine() is very high to >> calculated se one by one, is that worth for some benefit we could not >> promise? > > Look at something like pipe-test.. wake_affine() used to ensure both > client/server ran on the same cpu, but then I think we added > select_idle_sibling() and wrecked it again :/ > > $ taskset 1 perf bench sched pipe > # Running sched/pipe benchmark... > # Extecuted 1000000 pipe operations between two tasks > > Total time: 3.761 [sec] > > 3.761725 usecs/op > 265835 ops/sec > > $ perf bench sched pipe > # Running sched/pipe benchmark... > # Extecuted 1000000 pipe operations between two tasks > > Total time: 29.809 [sec] > > 29.809720 usecs/op > 33546 ops/sec >
Ok, it do looks like wake_affine() lost it's value... > > Now as far as I can see there's two options, either we find there's > absolutely no benefit in wake_affine() as it stands today and we simply > disable/remove it, or we go fix it. What we don't do is completely > wreck it at atrocious cost. I get your point, we should replace wake_affine() with some feature which could really achieve the goal to make client and server on same cpu. But is the logical that the waker/wakee are server/client(or reversed) still works now? that sounds a little arbitrary to me... Regards, Michael Wang > > -- > 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/ > -- 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/