Messages in this thread | | | Subject | Re: [patch] sched/fair: Use instantaneous load in wakeup paths | From | Dietmar Eggemann <> | Date | Fri, 17 Jun 2016 11:55:02 +0100 |
| |
On 17/06/16 07:21, Mike Galbraith wrote: > 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]# >
Is this the influence of wake_affine using instantaneous load now too or did you set SD_BALANCE_WAKE on sd's or both?
> 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.
IMHO, if it would be possible to get rid of sd->wake_idx, sd->forkexec_idx, the implementation would be less messy. Is there anyone changing these values to something other that the default 0?
> > -Mike >
| |