From: | John A Meinel <john(at)arbash-meinel(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | Magnus Hagander <mha(at)sollentuna(dot)net>, Ken Egervari <ken(at)upfactor(dot)com>, pgsql-performance(at)postgresql(dot)org, pgsql-hackers-win32(at)postgresql(dot)org |
Subject: | Re: [PERFORM] Help with tuning this query (with |
Date: | 2005-03-07 17:24:07 |
Message-ID: | 422C8E37.8000009@arbash-meinel.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers-win32 pgsql-performance |
Tom Lane wrote:
>John A Meinel <john(at)arbash-meinel(dot)com> writes:
>
>
>>>>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.
>>>
>>>
>
>
>
>>Or we modify the win32 gettimeofday call to something like:
>>
>>
>
>That's what Magnus was talking about, but it's really no good because
>it would cause Postgres' now() function to fail to track post-boot-time
>changes in the system date setting. Which I think would rightly be
>considered a bug.
>
>The EXPLAIN ANALYZE instrumentation code will really be happier with a
>straight time-since-bootup counter; by using gettimeofday, it is
>vulnerable to giving wrong answers if someone changes the date setting
>while the EXPLAIN is running. But there is (AFAIK) no such call among
>the portable Unix syscalls. It seems reasonable to me to #ifdef that
>code to make use of QueryPerformanceCounter on Windows. This does not
>mean we want to alter the behavior of gettimeofday() where it's being
>used to find out the time of day.
>
> regards, tom lane
>
>
>
What if you changed the "initialized" to
if (count & 0xFF == 0) {
count = 1;
// get the new time of day
}
++count;
Then we would only be wrong for 256 gettimeofday calls. I agree it isn't
great, though. And probably better to just abstract (possibly just with
#ifdef) the calls for accurate timing, from the calls that actually need
the real time.
John
=:->
From | Date | Subject | |
---|---|---|---|
Next Message | Greg Stark | 2005-03-07 18:05:30 | Re: [PERFORM] Help with tuning this query (with |
Previous Message | Tom Lane | 2005-03-07 16:38:51 | Re: [PERFORM] Help with tuning this query (with explain analyze finally) |
From | Date | Subject | |
---|---|---|---|
Next Message | Josh Berkus | 2005-03-07 17:28:47 | Re: Help trying to tune query that executes 40x slower than in SqlServer |
Previous Message | Hugo Ferreira | 2005-03-07 17:01:58 | Help trying to tune query that executes 40x slower than in SqlServer |