Re: [PATCH 2/2] sched,time: call __acct_update_integrals once a jiffy

From: Frederic Weisbecker
Date: Sat Jan 30 2016 - 09:20:46 EST


On Fri, Jan 29, 2016 at 05:43:28PM -0500, Rik van Riel wrote:
> On 01/29/2016 05:23 PM, riel@xxxxxxxxxx wrote:
> > From: Rik van Riel <riel@xxxxxxxxxx>
>
> > This speeds up
>
> ... ok, that changelog got truncated :(
>
> Here is the full version:
>
>
> Because __acct_update_integrals does nothing unless the time
> interval in question exceeds a jiffy, there is no real reason
> to call it more than once a jiffy from the syscall, irq, and
> guest entry & exit paths.
>
> If tasks get rescheduled frequently, the scheduler will still
> update their time statistics normally.
>
> However, longer running tasks with frequent syscall, irq,
> or guest entry & exit see a difference with this patch.
>
> A microbenchmark calling an invalid syscall number 10 million
> times in a row speeds up an additional 30% over the numbers
> with just the previous patch, for a total speedup of about 40%
> over 4.4 and 4.5-rc1.
>
> Run times for the microbenchmark:
>
> 4.4 3.8 seconds
> 4.5-rc1 3.7 seconds
> 4.5-rc1 + first patch 3.3 seconds
> 4.5-rc1 + both patches 2.3 seconds

Very nice improvement!