Re: [PATCHv3] ftrace: Provide trace clock monotonic raw

From: John Stultz
Date: Fri May 08 2015 - 12:05:29 EST

On Fri, May 8, 2015 at 7:41 AM, Steven Rostedt <rostedt@xxxxxxxxxxx> wrote:
> On Fri, 8 May 2015 07:30:39 -0700
> Drew Richardson <drew.richardson@xxxxxxx> wrote:
>> Expose the NMI safe accessor to the monotonic raw clock to the
>> tracer. The mono clock was added with commit
>> 1b3e5c0936046e7e023149ddc8946d21c2ea20eb. The advantage of the
>> monotonic raw clock is that it will advance more constantly than the
>> monotonic clock.
>> Imagine someone is trying to optimize a particular program to reduce
>> instructions executed for a given workload while minimizing the effect
>> on runtime. Also suppose that NTP is running and potentially making
>> larger adjustments to the monotonic clock. If NTP is adjusting the
>> monotonic clock to advance more rapidly, the program will appear to
>> use fewer instructions per second but run longer than if the monotonic
>> raw clock had been used. The total number of instructions observed
>> would be the same regardless of the clock source used, but how it's
>> attributed to time would be affected.
>> Conversely if NTP is adjusting the monotonic clock to advance more
>> slowly, the program will appear to use more instructions per second
>> but run more quickly. Of course there are many sources that can cause
>> jitter in performance measurements on modern processors, but let's
>> remove NTP from the list.
>> The monotonic raw clock can also be useful for tracing early boot,
>> e.g. when debugging issues with NTP.
> Peter, Thomas, John, you OK with this?

Yea. No objections from me wrt the functionality of the patch.

I'd just again maybe caution folks to not go too far in assuming
CLOCK_MONOTONIC_RAW doesn't have frequency changes, as the underlying
hardware will drift due to varying thermal conditions.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at