Re: [pgsql-hackers-win32] Help with tuning this query (with
| От | John A Meinel | 
|---|---|
| Тема | Re: [pgsql-hackers-win32] Help with tuning this query (with | 
| Дата | |
| Msg-id | 422CDA2A.1000105@arbash-meinel.com обсуждение исходный текст | 
| Ответ на | Re: [pgsql-hackers-win32] Help with tuning this query (with explain analyze finally) ("Dave Held" <dave.held@arrayservicesgrp.com>) | 
| Ответы | Re: [pgsql-hackers-win32] Help with tuning this query (with | 
| Список | pgsql-performance | 
Dave Held wrote:
>There is always clock().  It's mandated by ANSI C, but my docs say
>that POSIX requires CLOCKS_PER_SEC == 1000000 regardless of actual
>timer resolution, which seems a little brain-dead to me.
>
>__
>David B. Held
>
>
My experience with clock() on win32 is that CLOCKS_PER_SEC was 1000, and
it had a resolution of 55clocks / s. When I just did this:
int main(int argc, char **argv)
{
    int start = clock();
    int now = start;
    cout << "Clock: " << CLOCKS_PER_SEC << endl;
    for(int i = 0; i < 10; ++i) {
        while(now == clock()) {
            // Do nothing
        }
        now = clock();
        cout << now-start << "\t" << (now - start) / (double)
CLOCKS_PER_SEC << endl;
    }
}
I got:
Clock: 1000
16      0.016
31      0.031
47      0.047
62      0.062
78      0.078
93      0.093
109     0.109
125     0.125
141     0.141
156     0.156
Which is about 1/0.016 = 62.5 clocks per second.
I'm pretty sure this is slightly worse than what we want. :)
It might be better on other platforms, but on win32 clock() is most
definitely *not* what you want.
John
=:->
		
	Вложения
В списке pgsql-performance по дате отправления: