Tom Lane wrote:
>
> > platform) i686-pc-linux-gnu, compiled by GCC egcs-2.91.60(turbolinux 4.2)
> > min delay) 10msec according to your test program.
> > -B) 64 (all other settings are default)
>
> Thanks. Could I trouble you to run it again with a larger -B, say
> 1024 or 2048? What I've found is that at -B 64, the benchmark is
> so constrained by limited buffer space that it doesn't reflect
> performance at a more realistic production setting.
>
Hmm the result doesn't seem that obvious.
First I got the following result.
[CommitDelay=0]
1)tps = 23.024648(including connections establishing)
tps = 23.856420(excluding connections establishing)
2)tps = 30.276270(including connections establishing)
tps = 30.996459(excluding connections establishing)
[CommitDelay=1]
1)tps = 23.065921(including connections establishing)
tps = 23.866029(excluding connections establishing)
2)tps = 34.024632(including connections establishing)
tps = 35.671566(excluding connections establishing)
The result seems inconstant and after disabling
checkpoint process I got the following.
[CommitDelay=0]
1)tps = 24.060970(including connections establishing)
tps = 24.416851(excluding connections establishing)
2)tps = 21.361134(including connections establishing)
tps = 21.605583(excluding connections establishing)
3)tps = 20.377635(including connections establishing)
tps = 20.646523(excluding connections establishing)
[CommitDelay=1]
1)tps = 22.164379(including connections establishing)
tps = 22.790772(excluding connections establishing)
2)tps = 22.719068(including connections establishing)
tps = 23.040485(excluding connections establishing)
3)tps = 24.341675(including connections establishing)
tps = 25.869479(excluding connections establishing)
Unfortunately I have no more time to check today.
Please check the similar test case.
[My test case]
I created and initialized 10 datatabases as follows.
1) create databases.
createdb inoue1
craetedb inoue2
.
createdb inoue10
2) pgbench -i inoue1
pgbench -i inoue2
.
pgbench -i inoue10
3) invoke a modified pgbench
pgbench -c 10 -t 100 inoue
I've attached a patch to change pgbench so that
each connection connects to different database
whose name is 'xxxx%d'(xxxx is the specified
database? name).
Regards,
Hiroshi Inoue
Index: pgbench.c
===================================================================
RCS file: /home/cvs/pgcurrent/contrib/pgbench/pgbench.c,v
retrieving revision 1.1
diff -c -r1.1 pgbench.c
*** pgbench.c 2001/02/20 07:55:21 1.1
--- pgbench.c 2001/02/20 09:31:13
***************
*** 540,545 ****
--- 540,546 ----
PGconn *con;
PGresult *res;
+ char dbn[48];
while ((c = getopt(argc, argv, "ih:nvp:dc:t:s:S")) != EOF)
{
***************
*** 639,645 ****
}
/* opening connection... */
! con = PQsetdb(pghost, pgport, NULL, NULL, dbName);
if (PQstatus(con) == CONNECTION_BAD)
{
fprintf(stderr, "Connection to database '%s' failed.\n", dbName);
--- 640,648 ----
}
/* opening connection... */
! /*con = PQsetdb(pghost, pgport, NULL, NULL, dbName);*/
! sprintf(dbn, "%s1", dbName);
! con = PQsetdb(pghost, pgport, NULL, NULL, dbn);
if (PQstatus(con) == CONNECTION_BAD)
{
fprintf(stderr, "Connection to database '%s' failed.\n", dbName);
***************
*** 726,732 ****
/* make connections to the database */
for (i = 0; i < nclients; i++)
{
! state[i].con = PQsetdb(pghost, pgport, NULL, NULL, dbName);
if (PQstatus(state[i].con) == CONNECTION_BAD)
{
fprintf(stderr, "Connection to database '%s' failed.\n",
dbName);
--- 729,737 ----
/* make connections to the database */
for (i = 0; i < nclients; i++)
{
! /*state[i].con = PQsetdb(pghost, pgport, NULL, NULL, dbName);*/
! sprintf(dbn, "%s%d", dbName, i + 1);
! state[i].con = PQsetdb(pghost, pgport, NULL, NULL, dbn);
if (PQstatus(state[i].con) == CONNECTION_BAD)
{
fprintf(stderr, "Connection to database '%s' failed.\n",
dbName);
- Re: [ADMIN] v7.1b4 bad performance Dmitry Morozovsky
- Re: [HACKERS] Re: [ADMIN] v7.1b4 bad performance Hiroshi Inoue
- Re: [HACKERS] Re: [ADMIN] v7.1b4 bad performance Tom Lane
- Re: [HACKERS] Re: [ADMIN] v7.1b4 bad performanc... Hiroshi Inoue
- Re: [HACKERS] Re: [ADMIN] v7.1b4 bad perfor... Tom Lane
- Re: [HACKERS] Re: [ADMIN] v7.1b4 bad pe... Hiroshi Inoue
- Re: [HACKERS] Re: [ADMIN] v7.1b4 b... Tom Lane
- RE: [HACKERS] Re: [ADMIN] v7.1b4 b... Hiroshi Inoue
- Re: [HACKERS] Re: [ADMIN] v7.1b4 b... Tom Lane
- Re: [HACKERS] Re: [ADMIN] v7.1b4 b... Hiroshi Inoue
- Re: [HACKERS] Re: [ADMIN] v7.1b4 b... Hiroshi Inoue
- Re: [HACKERS] Re: [ADMIN] v7.1b4 b... Hiroshi Inoue
- RE: [HACKERS] Re: [ADMIN] v7.1b4 b... Hiroshi Inoue
- [HACKERS] RE: Re: [ADMIN] v7.1b4 b... Lincoln Yeoh
- Re: [HACKERS] RE: Re: [ADMIN] v7.1... Hannu Krosing
- Re: [HACKERS] Re: [ADMIN] v7.1b4 b... Hiroshi Inoue
- Re: [HACKERS] [ADMIN] v7.1b4 bad performance Dmitry Morozovsky
- Re: [ADMIN] v7.1b4 bad performance Bruce Momjian
- Re: [ADMIN] v7.1b4 bad performance Dmitry Morozovsky
- Re: [ADMIN] v7.1b4 bad performance Dmitry Morozovsky
- Re: [HACKERS] Re: [ADMIN] v7.1b4 bad perfor... Dave Mertens