Messages in this thread | | | Subject | Re: [PATCH RFC/RFT] sched/fair: Improve the behavior of sync flag | From | Mike Galbraith <> | Date | Sun, 27 Aug 2017 08:08:10 +0200 |
| |
On Sun, 2017-08-27 at 07:44 +0200, Mike Galbraith wrote: > On Sat, 2017-08-26 at 18:02 -0700, Joel Fernandes wrote: > > Binder (Android's IPC mechanism) which uses sync wake ups during synchronous > > transactions to the scheduler to indicate that the waker is about to sleep > > soon. The current wake up path can improved when the sync flag is passed > > resulting in higher binder performance. In this patch we more strongly wake up > > the wakee on the waker's CPU if sync is passed based on a few other conditions > > such as wake_cap, cpus allowed. wake_wide is checked only after the sync flag > > check so that it doesn't mess up sync. Binder throughput tests see good > > improvement improvement when waking up wakee (calling thread) on the waker's > > CPU (called thread) with this flag. Some tests results are below: > > Sync is not a contract, it's a hint. If you really want sync behavior, > you need to create a contract signed in blood to signal that you really > really are passing the baton.
P.S. to get the most bang for your synchronous buck, you want a preemptive wakeup.. but that butts heads with the fair engine.
-Mike
| |