Re: Timing overhead and Linux clock sources - Mailing list pgsql-hackers

From Bruce Momjian
Subject Re: Timing overhead and Linux clock sources
Date
Msg-id 20120827171851.GP11088@momjian.us
Whole thread Raw
In response to Re: Timing overhead and Linux clock sources  (Robert Haas <robertmhaas@gmail.com>)
Responses Re: Timing overhead and Linux clock sources
Re: Timing overhead and Linux clock sources
List pgsql-hackers
On Mon, Aug 27, 2012 at 12:39:02PM -0400, Robert Haas wrote:
> On Sat, Aug 25, 2012 at 10:48 PM, Bruce Momjian <bruce@momjian.us> wrote:
> > On Mon, Aug 20, 2012 at 03:11:51PM -0400, Robert Haas wrote:
> >> On Thu, Aug 16, 2012 at 10:28 PM, Bruce Momjian <bruce@momjian.us> wrote:
> >> > FYI, I am planning to go ahead and package this tool in /contrib for PG
> >> > 9.3.
> >>
> >> Isn't this exactly what we already did, in 9.2, in the form of
> >> contrib/pg_test_timing?
> >
> > Sorry, not sure how I missed that commit.  Anyway, I am attaching a
> > patch for 9.3 that I think improves the output of the tool, plus adds
> > some C comments.
> >
> > The new output has the lowest duration times first:
> >
> >         Testing timing overhead for 3 seconds.
> >         Per loop time including overhead: 41.31 nsec
> >         Histogram of timing durations:
> >         < usec   % of total      count
> >              1     95.87135   69627856
> >              2      4.12759    2997719
> >              4      0.00086        628
> >              8      0.00018        133
> >             16      0.00001          5
> >             32      0.00000          1
> >
> > This should make the output clearer to eyeball for problems --- a good
> > timing has a high percentage on the first line, rather than on the last
> > line.
> 
> I guess I'm not sure the output format is an improvement.  I wouldn't
> care much one way or the other if we had made this change at the time
> in AS92, but I'm not sure it's really worth breaking compatibility for
> a format that may or may not be any better.  The person who wrote the
> original code presumably preferred it way it already is.

He wrote it that way to allow for simpler C code --- he could just start
from 31 and keeping skipping entries until he hit a non-zero.

My format makes it easy to see which line should have the majority of
the entries, e.g. first line should be > 90%.  I doubt there are enough
people running this cross-version that consistency in output makes any
difference between major PG versions.

--  Bruce Momjian  <bruce@momjian.us>        http://momjian.us EnterpriseDB
http://enterprisedb.com
 + It's impossible for everything to be true. +



pgsql-hackers by date:

Previous
From: Bruce Momjian
Date:
Subject: Re: unsigned and signed chars in libpq API
Next
From: Robert Haas
Date:
Subject: Re: spinlocks on HP-UX