Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search for
  Advanced Search

Re: explain analyze timings


  • From: John A Meinel <john(at)arbash-meinel(dot)com>
  • To: Simon Riggs <simon(at)2ndquadrant(dot)com>
  • Cc: pgsql-hackers-win32(at)postgresql(dot)org
  • Subject: Re: explain analyze timings
  • Date: Sun, 20 Mar 2005 10:01:39 -0600
  • Message-id: <423D9E63(dot)2060008(at)arbash-meinel(dot)com>

Simon Riggs wrote:

On Sun, 2005-03-20 at 14:42 +0100, Magnus Hagander wrote:
There is. I beleive QueryPerformanceCounter has sub-mirosecond
resolution.
Can we just replace gettimeofday() with a version that's basically:
No, because it's also used for actual time-of-day calls.  It'd be
necessary to hack executor/instrument.c in particular.
Here's a patch that does just this.

On my system, the counter resolution is 3192090000 ticks per second
(Intel Xeon CPU). On a AMD Athlon XP system, it's 3579545 ticks per
second (a lot less, but still way way way better than gettimeofday has
on win32).

Is this just a Win32 hack?

I've been looking for a sub-millisecond counter on other OS for a while
now...anybody know of any port specific counters elsewhere?

Thanks,

gettimeofday has microsecond resolution. And on most platforms you actually do get good resolution from it. QueryPerformanceCounter is win32 only, and it has variable resolution, as determined by QueryPerformanceFrequency. (obviously as above the Xeon claims 3B/s while Athlon is only 3.5M/s) But that is just the finest resolution they can show, you still need to test to see what the resolution they can give you. On my dual Xeon I get Freq=2399360000 =2.4B/s In testing, the call overhead seems to be about .35us, so the resolution is just < 1us.

Best Regards, Simon Riggs
John
=:->

Attachment: signature.asc
Description: OpenPGP digital signature



Home | Main Index | Thread Index

Privacy Policy | PostgreSQL Archives hosted by Command Prompt, Inc. | Designed by tinysofa
Copyright © 1996 – 2008 PostgreSQL Global Development Group