Timing of 'SELECT 1'

From: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
To: PostgreSQL-development <pgsql-hackers(at)postgreSQL(dot)org>
Subject: Timing of 'SELECT 1'
Date: 2004-03-10 04:30:10
Message-ID: 200403100430.i2A4UAR22890@candle.pha.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

I am timing small queries, and found that a PREPARE/EXECUTE of "SELECT
1" takes about 1.2ms on my machine. A normal SELECT doesn't take much
longer, so I am wondering why a simpler query isn't faster.

Looking at log_executor_stats, I see the following. Execute shows
nothing taking much time, mostly < .2ms, but the total seems high. I
wonder if one of our standard query start/stop functions is taking too
long and can be optimized.

---------------------------------------------------------------------------

test=> PREPARE xx AS SELECT 1;
PREPARE
-- run EXECUTE several times
test=> EXECUTE xx;
LOG: PARSER STATISTICS
DETAIL: ! system usage stats:
! 0.000026 elapsed 0.000007 user 0.000021 system sec
! [0.006128 user 0.018384 sys total]
! 0/0 [17/16] filesystem blocks in/out
! 0/0 [0/0] page faults/reclaims, 0 [0] swaps
! 0 [0] signals rcvd, 0/0 [21/97] messages rcvd/sent
! 0/0 [38/78] voluntary/involuntary context switches
! buffer usage stats:
! Shared blocks: 0 read, 0 written, buffer hit rate = 0.00%
! Local blocks: 0 read, 0 written, buffer hit rate = 0.00%
! Direct blocks: 0 read, 0 written
LOG: PARSE ANALYSIS STATISTICS
DETAIL: ! system usage stats:
! 0.000062 elapsed 0.000004 user 0.000010 system sec
! [0.006168 user 0.018504 sys total]
! 0/0 [17/16] filesystem blocks in/out
! 0/0 [0/0] page faults/reclaims, 0 [0] swaps
! 0 [0] signals rcvd, 0/0 [21/98] messages rcvd/sent
! 0/0 [38/79] voluntary/involuntary context switches
! buffer usage stats:
! Shared blocks: 0 read, 0 written, buffer hit rate = 0.00%
! Local blocks: 0 read, 0 written, buffer hit rate = 0.00%
! Direct blocks: 0 read, 0 written
LOG: REWRITER STATISTICS
DETAIL: ! system usage stats:
! 0.000005 elapsed 0.000002 user 0.000004 system sec
! [0.006205 user 0.018615 sys total]
! 0/0 [17/16] filesystem blocks in/out
! 0/0 [0/0] page faults/reclaims, 0 [0] swaps
! 0 [0] signals rcvd, 0/0 [21/99] messages rcvd/sent
! 0/0 [38/80] voluntary/involuntary context switches
! buffer usage stats:
! Shared blocks: 0 read, 0 written, buffer hit rate = 0.00%
! Local blocks: 0 read, 0 written, buffer hit rate = 0.00%
! Direct blocks: 0 read, 0 written
LOG: EXECUTOR STATISTICS
DETAIL: ! system usage stats:
! 0.000017 elapsed 0.000004 user 0.000012 system sec
! [0.006248 user 0.018744 sys total]
! 0/0 [17/16] filesystem blocks in/out
! 0/0 [0/0] page faults/reclaims, 0 [0] swaps
! 0 [0] signals rcvd, 0/0 [21/100] messages rcvd/sent
! 0/0 [38/81] voluntary/involuntary context switches
! buffer usage stats:
! Shared blocks: 0 read, 0 written, buffer hit rate = 0.00%
! Local blocks: 0 read, 0 written, buffer hit rate = 0.00%
! Direct blocks: 0 read, 0 written
LOG: EXECUTOR STATISTICS
DETAIL: ! system usage stats:
! 0.000288 elapsed 0.000037 user 0.000113 system sec
! [0.006281 user 0.018845 sys total]
! 0/0 [17/16] filesystem blocks in/out
! 0/0 [0/0] page faults/reclaims, 0 [0] swaps
! 0 [0] signals rcvd, 0/1 [21/101] messages rcvd/sent
! 0/1 [38/82] voluntary/involuntary context switches
! buffer usage stats:
! Shared blocks: 0 read, 0 written, buffer hit rate = 0.00%
! Local blocks: 0 read, 0 written, buffer hit rate = 0.00%
! Direct blocks: 0 read, 0 written
LOG: duration: 1.230 ms
?column?
----------
1
(1 row)

---------------------------------------------------------------------------

--
Bruce Momjian | http://candle.pha.pa.us
pgman(at)candle(dot)pha(dot)pa(dot)us | (610) 359-1001
+ If your life is a hard drive, | 13 Roberts Road
+ Christ can be your backup. | Newtown Square, Pennsylvania 19073

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2004-03-10 05:08:23 Re: Use "average field correlation per hard disk page" instead of global one?
Previous Message Tom Lane 2004-03-10 04:24:37 Re: pgFoundry WAS: On pgweb project