8.3.7 TPS and checkpoint segments
Continuing my postgresql.conf changes I ran a new test yesterday with checkpoint_segments set to 300. As a reminder the original results and specs of the machine being used in the test are here. The results of the new test below:
pghost:  pgport: 6000 nclients: 4 nxacts: 1000000 dbName: bench
transaction type: TPC-B (sort of)
scaling factor: 100
number of clients: 4
number of transactions per client: 1000000
number of transactions actually processed: 4000000/4000000
tps = 101.024360 (including connections establishing)
tps = 101.024392 (excluding connections establishing)
pghost:  pgport: 6000 nclients: 4 nxacts: 1000000 dbName: bench
transaction type: TPC-B (sort of)
scaling factor: 100
number of clients: 4
number of transactions per client: 1000000
number of transactions actually processed: 4000000/4000000
tps = 100.796885 (including connections establishing)
tps = 100.796924 (excluding connections establishing)
pghost:  pgport: 6000 nclients: 4 nxacts: 1000000 dbName: bench
transaction type: TPC-B (sort of)
scaling factor: 100
number of clients: 4
number of transactions per client: 1000000
number of transactions actually processed: 4000000/4000000
tps = 100.801501 (including connections establishing)
tps = 100.801534 (excluding connections establishing)
pghost:  pgport: 6000 nclients: 4 nxacts: 1000000 dbName: bench
transaction type: TPC-B (sort of)
scaling factor: 100
number of clients: 4
number of transactions per client: 1000000
number of transactions actually processed: 4000000/4000000
tps = 100.852900 (including connections establishing)
tps = 100.852944 (excluding connections establishing)
O.k. so same test, same hardware, 10x more checkpoint_segments gives us ~8 percent improvement.