[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Y+tl1ZJiWuMeKCnB@hirez.programming.kicks-ass.net>
Date: Tue, 14 Feb 2023 11:43:33 +0100
From: Peter Zijlstra <peterz@...radead.org>
To: John Stultz <jstultz@...gle.com>
Cc: "Liang, Kan" <kan.liang@...ux.intel.com>,
Thomas Gleixner <tglx@...utronix.de>, mingo@...hat.com,
linux-kernel@...r.kernel.org, sboyd@...nel.org, eranian@...gle.com,
namhyung@...nel.org, ak@...ux.intel.com, adrian.hunter@...el.com
Subject: Re: [RFC PATCH V2 2/9] perf: Extend ABI to support post-processing
monotonic raw conversion
On Mon, Feb 13, 2023 at 02:22:39PM -0800, John Stultz wrote:
> The interpoloation is pretty easy to do:
>
> do {
> start= readtsc();
> clock_gett(CLOCK_MONOTONIC_RAW, &ts);
> end = readtsc();
> delta = end-start;
> } while (delta > THRESHOLD) // make sure the reads were not preempted
> mid = start + (delta +(delta/2))/2; //round-closest
>
> and be able to get you a fairly close matching of TSC to
> CLOCK_MONOTONIC_RAW value.
>
> Once you have that mapping you can take a few samples and establish
> the linear function.
Right, this is how we do the TSC calibration in the first place, and if
NTP can achieve high correctness over a network, then surely we can do
better locally.
That is, this scheme should work for all CLOCKs, not only MONOTONIC_RAW.
Powered by blists - more mailing lists