Messages in this thread | | | Subject | Re: [PATCH 2/2] sched,time: call __acct_update_integrals once a jiffy | From | Rik van Riel <> | Date | Fri, 29 Jan 2016 17:43:28 -0500 |
| |
On 01/29/2016 05:23 PM, riel@redhat.com wrote: > From: Rik van Riel <riel@redhat.com>
> 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
-- All rights reversed
| |