Re: [pgsql-hackers-win32] Help with tuning this query (with - Mailing list pgsql-performance

From John A Meinel
Subject Re: [pgsql-hackers-win32] Help with tuning this query (with
Date
Msg-id 422C8E37.8000009@arbash-meinel.com
Whole thread Raw
In response to Re: [pgsql-hackers-win32] Help with tuning this query (with explain analyze finally)  (Tom Lane <tgl@sss.pgh.pa.us>)
Responses Re: [pgsql-hackers-win32] Help with tuning this query (with
List pgsql-performance
Tom Lane wrote:

>John A Meinel <john@arbash-meinel.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
=:->



Attachment

pgsql-performance by date:

Previous
From: Hugo Ferreira
Date:
Subject: Help trying to tune query that executes 40x slower than in SqlServer
Next
From: Josh Berkus
Date:
Subject: Re: Help trying to tune query that executes 40x slower than in SqlServer