Messages in this thread | | | Subject | Re: [patch] sched/fair: Use instantaneous load in wakeup paths | From | Mike Galbraith <> | Date | Fri, 17 Jun 2016 08:21:02 +0200 |
| |
Here are some schbench runs on an 8x8 box to show that longish run/sleep period corner I mentioned.
vogelweide:~/:[1]# for i in `seq 5`; do schbench -m 8 -t 1 -a -r 10 2>&1 | grep 'threads 8'; done cputime 30000 threads 8 p99 68 cputime 30000 threads 8 p99 46 cputime 30000 threads 8 p99 46 cputime 30000 threads 8 p99 45 cputime 30000 threads 8 p99 49 vogelweide:~/:[0]# echo NO_WAKE_INSTANTANEOUS_LOAD > /sys/kernel/debug/sched_features vogelweide:~/:[0]# for i in `seq 5`; do schbench -m 8 -t 1 -a -r 10 2>&1 | grep 'threads 8'; done cputime 30000 threads 8 p99 9968 cputime 30000 threads 8 p99 10224 vogelweide:~/:[0]#
Using instantaneous load, we fill the box every time, without, we stack every time. This was with Peter's select_idle_sibling() rewrite applied as well, but you can see that it does matter.
That doesn't mean I think my patch should immediately fly upstream 'course, who knows, there may be a less messy way to deal with it, or, as already stated, maybe it just doesn't matter enough to the real world to even bother with.
-Mike
| |