Re: [PATCH 2/7] Simple Performance Counters: x86_64 support

Mathieu Desnoyers
2007-08-17T16:10:41Z

* Andi Kleen (andi@firstfloor.org) wrote:
> On Wed, Aug 01, 2007 at 11:58:44AM -0700, Christoph Lameter wrote:
> > On Wed, 1 Aug 2007, Andi Kleen wrote:
> >
> > > That might be on your systems, but for a mainline submission the
> > > standards are higher.
> >
> > Right that is why I asked for someone to take it over and do mainline work
> > if that is wanted. I had a couple of requests for these patches.
>
> The easiest way to solve this would be to switch to reporting cycles.
> That would simplify your patch in fact.
>

Actually, I deal with that in LTTng by having a module that verifies
synchronicity of TSCs across CPUs and, if it's over a certain threshold,
falls back to a sophisticated logical clock (actually, it is a mix of
the TSC of the cpu with highest count and a logical clock) and prints a
printk informing the user of the inaccuracy. I also provide suggestions
on my website of what kernel features must be disabled by users to get
precise timestamps (idle=poll, disable frequency scaling) ans what the
limitations are on Intel and AMD models.

It is packed in a lttng-timestamp-* patchset which I plan to eventually
post for review.

It also provides an architecture independent timestamp read consisting
in jiffies or'd with a logical clock. No locking is required by the
reader (no read reqlock at all). This type of clock could be considered
as "always monotonically increasing", which is the basic condition
required to have a meaningful trace.

Mathieu

> -Andi
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>

--
Mathieu Desnoyers
Computer Engineering Ph.D. Student, Ecole Polytechnique de Montreal
OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68