Re: [RFC v7 00/23] adapt clockevents frequencies to mono clock

From: Nicolai Stange
Date: Wed Sep 21 2016 - 10:06:52 EST


Thomas Gleixner <tglx@xxxxxxxxxxxxx> writes:

> On Wed, 21 Sep 2016, Nicolai Stange wrote:
>> Thomas Gleixner <tglx@xxxxxxxxxxxxx> writes:
>> > Have you ever measured the overhead of the extra work which has to be done
>> > in clockevents_adjust_all_freqs() ?
>>
>> Not exactly, I had a look at its invocation frequency which seems to
>> decay exponentially with uptime, presumably because the NTP error
>> approaches zero.
>>
>> However, I've just gathered a function_graph ftrace on my Intel
>> i7-4800MQ (Haswell, 8HTs):
>>
>> # TIME CPU DURATION FUNCTION CALLS
>> # | | | | | | | |
>> 85.287027 | 0) 0.899 us | clockevents_adjust_all_freqs();
>> 85.288026 | 0) 0.759 us | clockevents_adjust_all_freqs();
>> 85.289026 | 0) 0.735 us | clockevents_adjust_all_freqs();
>> 85.290026 | 0) 0.671 us | clockevents_adjust_all_freqs();
>> 149.503656 | 2) 2.477 us | clockevents_adjust_all_freqs();
>
> That's not that bad. Though I'd like to see numbers for ARM (especially the
> less powerful SoCs) as well.

On a Raspberry Pi 2B (bcm2836, ARMv7) with CONFIG_SMP=y, the mean over
~5300 samples is 5.14+/-1.04us with a max of 11.15us.

Unfortunately, the invocation frequency doesn't calm down as much as it
did on x86_64: after an uptime of 45min, I'm still seeing approximately
one invocation per second. Right after boot, it was ~3/s.

Thanks,

Nicolai