Testing 7/24/2019


Create DB and load w/ scale 1000:

	/usr/local/pgsql/bin/createdb bench_test
	/usr/local/pgsql/bin/pgbench -i -s 1000 bench_test


	nano /usr/local/pgsql/data/postgresql.conf
	/usr/local/pgsql/bin/pg_ctl -D /usr/local/pgsql/data -l logfile restart


Queries to verify settings, checked before each test run.

	postgres=# SHOW shared_buffers;
	 shared_buffers
	----------------
	 500MB
	(1 row)

	postgres=# SHOW max_connections;
	 max_connections
	-----------------
	 1000
	(1 row)

	postgres=# SHOW connection_proxies;
	 connection_proxies
	--------------------
	 0
	(1 row)



## Test 1:

Num clients: 25
Pooling: Disabled
Test:  Read-only

pgbench command:

	/usr/local/pgsql/bin/pgbench -p 5432 -c 25 -j 2 -T 600 -P 60 -S bench_test
	starting vacuum...end.
	progress: 60.0 s, 16119.3 tps, lat 1.228 ms stddev 1.522
	progress: 120.0 s, 16754.4 tps, lat 1.186 ms stddev 1.353
	progress: 180.0 s, 16015.6 tps, lat 1.284 ms stddev 1.825
	progress: 240.0 s, 15620.1 tps, lat 1.292 ms stddev 2.136
	progress: 300.0 s, 15923.5 tps, lat 1.266 ms stddev 2.204
	progress: 360.0 s, 16251.7 tps, lat 1.229 ms stddev 1.858
	progress: 420.0 s, 16766.1 tps, lat 1.184 ms stddev 0.798
	progress: 480.0 s, 15369.3 tps, lat 1.331 ms stddev 2.569
	progress: 540.0 s, 15905.0 tps, lat 1.264 ms stddev 1.623
	progress: 600.0 s, 16698.6 tps, lat 1.195 ms stddev 1.451
	transaction type: <builtin: select only>
	scaling factor: 1000
	query mode: simple
	number of clients: 25
	number of threads: 2
	duration: 600 s
	number of transactions actually processed: 9685480
	latency average = 1.245 ms
	latency stddev = 1.787 ms
	tps = 16142.319376 (including connections establishing)
	tps = 16142.417695 (excluding connections establishing)





## Test 2:

Num clients: 25
Pooling: Enabled, 1 Proxy, Size 10
Test:  Read-only

Verify: 

	postgres=# SHOW shared_buffers;
	 shared_buffers
	----------------
	 500MB
	(1 row)

	postgres=# SHOW max_connections;
	 max_connections
	-----------------
	 1000
	(1 row)

	postgres=# SHOW connection_proxies;
	 connection_proxies
	--------------------
	 1
	(1 row)


pgbench command:

	/usr/local/pgsql/bin/pgbench -p 6543 -c 25 -j 2 -T 600 -P 60 -S bench_test
	starting vacuum...end.
	progress: 60.0 s, 10453.7 tps, lat 2.385 ms stddev 37.901
	progress: 120.0 s, 10717.5 tps, lat 2.324 ms stddev 36.225
	progress: 180.0 s, 11044.3 tps, lat 2.271 ms stddev 34.069
	progress: 240.0 s, 11346.2 tps, lat 2.193 ms stddev 24.763
	progress: 300.0 s, 11165.1 tps, lat 2.242 ms stddev 34.535
	progress: 360.0 s, 11271.8 tps, lat 2.220 ms stddev 37.263
	progress: 420.0 s, 10654.6 tps, lat 2.343 ms stddev 31.330
	progress: 480.0 s, 9715.7 tps, lat 2.564 ms stddev 33.132
	progress: 540.0 s, 10883.8 tps, lat 2.303 ms stddev 39.546
	progress: 600.0 s, 11045.8 tps, lat 2.262 ms stddev 26.581
	transaction type: <builtin: select only>
	scaling factor: 1000
	query mode: simple
	number of clients: 25
	number of threads: 2
	duration: 600 s
	number of transactions actually processed: 6497949
	latency average = 2.307 ms
	latency stddev = 33.807 ms
	tps = 10829.874228 (including connections establishing)
	tps = 10829.914045 (excluding connections establishing)




## Test 3:

Num clients: 25
Pooling: Enabled, 2 Proxies, Size 10
Test:  Read-only

	postgres=# SHOW shared_buffers;
	 shared_buffers
	----------------
	 500MB
	(1 row)

	postgres=# SHOW max_connections;
	 max_connections
	-----------------
	 1000
	(1 row)

	postgres=# SHOW connection_proxies;
	 connection_proxies
	--------------------
	 2
	(1 row)



pgbench command:

	/usr/local/pgsql/bin/pgbench -p 6543 -c 25 -j 2 -T 600 -P 60 -S bench_test
	starting vacuum...end.
	progress: 60.0 s, 13567.1 tps, lat 1.825 ms stddev 1.261
	progress: 120.0 s, 13978.0 tps, lat 1.772 ms stddev 0.995
	progress: 180.0 s, 13990.2 tps, lat 1.773 ms stddev 1.004
	progress: 240.0 s, 14021.4 tps, lat 1.770 ms stddev 1.076
	progress: 300.0 s, 13798.7 tps, lat 1.793 ms stddev 1.279
	progress: 360.0 s, 13977.9 tps, lat 1.772 ms stddev 1.085
	progress: 420.0 s, 14056.6 tps, lat 1.763 ms stddev 1.010
	progress: 480.0 s, 13849.0 tps, lat 1.788 ms stddev 1.168
	progress: 540.0 s, 12471.8 tps, lat 1.989 ms stddev 3.181
	progress: 600.0 s, 13274.2 tps, lat 1.868 ms stddev 1.978
	transaction type: <builtin: select only>
	scaling factor: 1000
	query mode: simple
	number of clients: 25
	number of threads: 2
	duration: 600 s
	number of transactions actually processed: 8219131
	latency average = 1.809 ms
	latency stddev = 1.521 ms
	tps = 13698.445307 (including connections establishing)
	tps = 13698.491964 (excluding connections establishing)


## Test 4:

Num clients: 25
Pooling: Enabled, 10 Proxies, Size 10
Test:  Read-only


Verify:

	postgres=# SHOW shared_buffers;
	 shared_buffers
	----------------
	 500MB
	(1 row)

	postgres=# SHOW max_connections;
	 max_connections
	-----------------
	 1000
	(1 row)

	postgres=# SHOW connection_proxies;
	 connection_proxies
	--------------------
	 10
	(1 row)


pgbench command:

	/usr/local/pgsql/bin/pgbench -p 6543 -c 25 -j 2 -T 600 -P 60 -S bench_test
	starting vacuum...end.
	progress: 60.0 s, 11513.5 tps, lat 1.738 ms stddev 1.555
	progress: 120.0 s, 11890.7 tps, lat 1.675 ms stddev 1.558
	progress: 180.0 s, 11950.0 tps, lat 1.682 ms stddev 1.669
	progress: 240.0 s, 11918.4 tps, lat 1.696 ms stddev 1.640
	progress: 300.0 s, 11948.9 tps, lat 1.696 ms stddev 1.655
	progress: 360.0 s, 11961.4 tps, lat 1.683 ms stddev 2.239
	progress: 420.0 s, 11860.1 tps, lat 1.711 ms stddev 1.919
	progress: 480.0 s, 11996.7 tps, lat 1.682 ms stddev 1.856
	progress: 540.0 s, 11960.7 tps, lat 1.681 ms stddev 1.472
	progress: 600.0 s, 12211.4 tps, lat 1.637 ms stddev 1.719
	transaction type: <builtin: select only>
	scaling factor: 1000
	query mode: simple
	number of clients: 25
	number of threads: 2
	duration: 600 s
	number of transactions actually processed: 7152747
	latency average = 1.688 ms
	latency stddev = 1.742 ms
	tps = 11921.191600 (including connections establishing)
	tps = 11921.287122 (excluding connections establishing)


----------------------------------------------------------
----------------------------------------------------------
----------------------------------------------------------
SWITCHING TO 75 Clients

## Test 5:

Num clients: 75
Pooling: Disabled 0 Proxies
Test:  Read-only


Verify 

	postgres=# SHOW shared_buffers;
	 shared_buffers
	----------------
	 500MB
	(1 row)

	postgres=# SHOW max_connections;
	 max_connections
	-----------------
	 1000
	(1 row)

	postgres=# SHOW connection_proxies;
	 connection_proxies
	--------------------
	 0
	(1 row)


pgbench command:

	/usr/local/pgsql/bin/pgbench -p 5432 -c 75 -j 2 -T 600 -P 60 -S bench_test
	starting vacuum...end.
	progress: 60.0 s, 15425.8 tps, lat 3.054 ms stddev 3.327
	progress: 120.0 s, 15933.4 tps, lat 2.995 ms stddev 2.772
	progress: 180.0 s, 15669.7 tps, lat 3.082 ms stddev 2.879
	progress: 240.0 s, 15834.4 tps, lat 3.057 ms stddev 2.900
	progress: 300.0 s, 16257.6 tps, lat 2.952 ms stddev 2.519
	progress: 360.0 s, 15249.8 tps, lat 3.301 ms stddev 3.330
	progress: 420.0 s, 15255.5 tps, lat 3.314 ms stddev 4.239
	progress: 480.0 s, 15444.9 tps, lat 3.239 ms stddev 3.304
	progress: 540.0 s, 14658.1 tps, lat 3.460 ms stddev 4.901
	progress: 600.0 s, 14085.5 tps, lat 3.683 ms stddev 10.863
	transaction type: <builtin: select only>
	scaling factor: 1000
	query mode: simple
	number of clients: 75
	number of threads: 2
	duration: 600 s
	number of transactions actually processed: 9228932
	latency average = 3.205 ms
	latency stddev = 4.627 ms
	tps = 15372.365464 (including connections establishing)
	tps = 15372.434284 (excluding connections establishing)



## Test 6:

Num clients: 75
Pooling: Enabled, 1 Proxies
Test:  Read-only


Verify 

	postgres=# SHOW shared_buffers;
	 shared_buffers
	----------------
	 500MB
	(1 row)

	postgres=# SHOW connection_proxies;
	 connection_proxies
	--------------------
	 1
	(1 row)

	postgres=# SHOW max_connections;
	 max_connections
	-----------------
	 1000
	(1 row)


pgbench command:

	/usr/local/pgsql/bin/pgbench -p 6543 -c 75 -j 2 -T 600 -P 60 -S bench_test

	starting vacuum...end.
	progress: 60.0 s, 10290.1 tps, lat 7.238 ms stddev 104.739
	progress: 120.0 s, 10366.1 tps, lat 7.192 ms stddev 105.252
	progress: 180.0 s, 11092.5 tps, lat 6.764 ms stddev 85.494
	progress: 240.0 s, 11355.1 tps, lat 6.377 ms stddev 84.101
	progress: 300.0 s, 11624.1 tps, lat 6.677 ms stddev 90.732
	progress: 360.0 s, 11559.8 tps, lat 6.475 ms stddev 85.048
	progress: 420.0 s, 10912.5 tps, lat 6.715 ms stddev 89.593
	progress: 480.0 s, 11324.9 tps, lat 6.666 ms stddev 100.627
	progress: 540.0 s, 10472.9 tps, lat 7.232 ms stddev 97.687
	progress: 600.0 s, 10474.2 tps, lat 6.730 ms stddev 96.200
	transaction type: <builtin: select only>
	scaling factor: 1000
	query mode: simple
	number of clients: 75
	number of threads: 2
	duration: 600 s
	number of transactions actually processed: 6568417
	latency average = 6.837 ms
	latency stddev = 95.534 ms
	tps = 10947.234202 (including connections establishing)
	tps = 10947.264954 (excluding connections establishing)



## Test 7:

Num clients: 75
Pooling: Enabled, 2 Proxies
Test:  Read-only

Verify:

	postgres=# SHOW shared_buffers;
	 shared_buffers
	----------------
	 500MB
	(1 row)

	postgres=# SHOW max_connections;
	 max_connections
	-----------------
	 1000
	(1 row)

	postgres=# SHOW connection_proxies;
	 connection_proxies
	--------------------
	 2
	(1 row)

pgbench command:

	/usr/local/pgsql/bin/pgbench -p 6543 -c 75 -j 2 -T 600 -P 60 -S bench_test
	starting vacuum...end.
	progress: 60.0 s, 13509.3 tps, lat 5.435 ms stddev 44.017
	progress: 120.0 s, 14204.8 tps, lat 5.255 ms stddev 45.090
	progress: 180.0 s, 14537.8 tps, lat 5.078 ms stddev 35.104
	progress: 240.0 s, 14559.4 tps, lat 5.075 ms stddev 41.282
	progress: 300.0 s, 13102.1 tps, lat 5.646 ms stddev 43.316
	progress: 360.0 s, 14485.7 tps, lat 5.110 ms stddev 42.047
	progress: 420.0 s, 14216.7 tps, lat 5.144 ms stddev 30.394
	progress: 480.0 s, 14743.1 tps, lat 5.063 ms stddev 44.878
	progress: 540.0 s, 13627.0 tps, lat 5.448 ms stddev 40.389
	progress: 600.0 s, 14013.0 tps, lat 5.274 ms stddev 29.446
	transaction type: <builtin: select only>
	scaling factor: 1000
	query mode: simple
	number of clients: 75
	number of threads: 2
	duration: 600 s
	number of transactions actually processed: 8460034
	latency average = 5.247 ms
	latency stddev = 39.964 ms
	tps = 14099.902048 (including connections establishing)
	tps = 14099.921386 (excluding connections establishing)



## Test 8:

Num clients: 75
Pooling: Enabled, 10 Proxies
Test:  Read-only

Verify:

	postgres=# SHOW shared_buffers;
	 shared_buffers
	----------------
	 500MB
	(1 row)

	postgres=# SHOW max_connections;
	 max_connections
	-----------------
	 1000
	(1 row)

	postgres=# SHOW connection_proxies;
	 connection_proxies
	--------------------
	 10
	(1 row)



pgbench command:

	/usr/local/pgsql/bin/pgbench -p 6543 -c 75 -j 2 -T 600 -P 60 -S bench_test
	starting vacuum...end.
	progress: 60.0 s, 11838.0 tps, lat 4.076 ms stddev 4.224
	progress: 120.0 s, 11906.5 tps, lat 4.105 ms stddev 4.215
	progress: 180.0 s, 11504.5 tps, lat 4.306 ms stddev 5.033
	progress: 240.0 s, 12426.4 tps, lat 3.817 ms stddev 3.483
	progress: 300.0 s, 12620.7 tps, lat 3.763 ms stddev 3.556
	progress: 360.0 s, 12408.1 tps, lat 3.844 ms stddev 4.194
	progress: 420.0 s, 12513.5 tps, lat 3.784 ms stddev 3.418
	progress: 480.0 s, 11984.3 tps, lat 4.084 ms stddev 4.750
	progress: 540.0 s, 11846.9 tps, lat 4.144 ms stddev 5.100
	progress: 600.0 s, 11970.3 tps, lat 4.119 ms stddev 5.595
	transaction type: <builtin: select only>
	scaling factor: 1000
	query mode: simple
	number of clients: 75
	number of threads: 2
	duration: 600 s
	number of transactions actually processed: 7261351
	latency average = 3.999 ms
	latency stddev = 4.403 ms
	tps = 12101.927680 (including connections establishing)
	tps = 12101.947236 (excluding connections establishing)



----------------------------------------------------------
----------------------------------------------------------
----------------------------------------------------------
SWITCHING TO 150 Clients


## Test 9:

Num clients: 150
Pooling: Disabled 
Test:  Read-only

Verify:

	postgres=# SHOW shared_buffers;
	 shared_buffers
	----------------
	 500MB
	(1 row)

	postgres=# SHOW max_connections;
	 max_connections
	-----------------
	 1000
	(1 row)

	postgres=# SHOW connection_proxies;
	 connection_proxies
	--------------------
	 0
	(1 row)


pgbench command:

	/usr/local/pgsql/bin/pgbench -p 5432 -c 150 -j 2 -T 600 -P 60 -S bench_test
	starting vacuum...end.
	progress: 60.0 s, 13322.4 tps, lat 6.520 ms stddev 5.123
	progress: 120.0 s, 13782.9 tps, lat 6.500 ms stddev 5.481
	progress: 180.0 s, 13855.2 tps, lat 6.615 ms stddev 5.571
	progress: 240.0 s, 14025.1 tps, lat 6.474 ms stddev 6.297
	progress: 300.0 s, 13959.6 tps, lat 6.583 ms stddev 5.297
	progress: 360.0 s, 14202.3 tps, lat 6.361 ms stddev 5.234
	progress: 420.0 s, 14190.4 tps, lat 6.151 ms stddev 4.717
	progress: 480.0 s, 14238.3 tps, lat 6.193 ms stddev 4.947
	progress: 540.0 s, 14130.2 tps, lat 6.372 ms stddev 5.425
	progress: 600.0 s, 14065.7 tps, lat 6.574 ms stddev 5.877
	transaction type: <builtin: select only>
	scaling factor: 1000
	query mode: simple
	number of clients: 150
	number of threads: 2
	duration: 600 s
	number of transactions actually processed: 8386519
	latency average = 6.436 ms
	latency stddev = 5.566 ms
	tps = 13963.550290 (including connections establishing)
	tps = 13963.609424 (excluding connections establishing)



## Test 10:

Num clients: 150
Pooling: Enabled, 1 Proxy 
Test:  Read-only

Verify:

	postgres=# SHOW shared_buffers;
	 shared_buffers
	----------------
	 500MB
	(1 row)

	postgres=# SHOW max_connections;
	 max_connections
	-----------------
	 1000
	(1 row)

	postgres=# SHOW connection_proxies;
	 connection_proxies
	--------------------
	 1
	(1 row)


pgbench command:

	/usr/local/pgsql/bin/pgbench -p 6543 -c 150 -j 2 -T 600 -P 60 -S bench_test
	starting vacuum...end.
	progress: 60.0 s, 11648.2 tps, lat 11.507 ms stddev 323.796
	progress: 120.0 s, 11746.0 tps, lat 13.837 ms stddev 375.399
	progress: 180.0 s, 11116.9 tps, lat 12.783 ms stddev 278.771
	progress: 240.0 s, 11140.5 tps, lat 12.419 ms stddev 301.098
	progress: 300.0 s, 11353.3 tps, lat 14.262 ms stddev 417.322
	progress: 360.0 s, 11251.3 tps, lat 12.838 ms stddev 324.140
	progress: 420.0 s, 10435.1 tps, lat 13.176 ms stddev 288.833
	progress: 480.0 s, 11674.7 tps, lat 14.344 ms stddev 399.520
	progress: 540.0 s, 11776.6 tps, lat 12.042 ms stddev 268.177
	progress: 600.0 s, 11904.1 tps, lat 10.421 ms stddev 257.375
	transaction type: <builtin: select only>
	scaling factor: 1000
	query mode: simple
	number of clients: 150
	number of threads: 2
	duration: 600 s
	number of transactions actually processed: 6842961
	latency average = 13.109 ms
	latency stddev = 357.109 ms
	tps = 11404.670563 (including connections establishing)
	tps = 11404.690004 (excluding connections establishing)



## Test 11:

Num clients: 150
Pooling: Enabled, 2 Proxy 
Test:  Read-only

Verify:

	postgres=# SHOW shared_buffers;
	 shared_buffers
	----------------
	 500MB
	(1 row)

	postgres=# SHOW max_connections;
	 max_connections
	-----------------
	 1000
	(1 row)

	postgres=# SHOW connection_proxies;
	 connection_proxies
	--------------------
	 2
	(1 row)


pgbench command:

	/usr/local/pgsql/bin/pgbench -p 6543 -c 150 -j 2 -T 600 -P 60 -S bench_test
	starting vacuum...end.
	progress: 60.0 s, 14524.3 tps, lat 10.005 ms stddev 173.521
	progress: 120.0 s, 14612.0 tps, lat 10.115 ms stddev 136.276
	progress: 180.0 s, 13821.3 tps, lat 10.805 ms stddev 110.172
	progress: 240.0 s, 14493.6 tps, lat 10.178 ms stddev 118.696
	progress: 300.0 s, 14485.6 tps, lat 10.065 ms stddev 125.469
	progress: 360.0 s, 14792.8 tps, lat 10.113 ms stddev 145.871
	progress: 420.0 s, 14790.0 tps, lat 9.659 ms stddev 112.212
	progress: 480.0 s, 14899.9 tps, lat 9.914 ms stddev 152.422
	progress: 540.0 s, 13222.9 tps, lat 11.545 ms stddev 120.153
	progress: 600.0 s, 14358.3 tps, lat 9.916 ms stddev 104.092
	transaction type: <builtin: select only>
	scaling factor: 1000
	query mode: simple
	number of clients: 150
	number of threads: 2
	duration: 600 s
	number of transactions actually processed: 8640194
	latency average = 10.261 ms
	latency stddev = 133.579 ms
	tps = 14400.020529 (including connections establishing)
	tps = 14400.041190 (excluding connections establishing)


## Test 12:

Num clients: 150
Pooling: Enabled, 10 Proxy 
Test:  Read-only

Verify:

	postgres=# SHOW shared_buffers;
	 shared_buffers
	----------------
	 500MB
	(1 row)

	postgres=# SHOW max_connections;
	 max_connections
	-----------------
	 1000
	(1 row)

	postgres=# SHOW connection_proxies;
	 connection_proxies
	--------------------
	 10
	(1 row)

pgbench command:

	/usr/local/pgsql/bin/pgbench -p 6543 -c 150 -j 2 -T 600 -P 60 -S bench_test
	starting vacuum...end.
	progress: 60.0 s, 11139.7 tps, lat 8.445 ms stddev 9.522
	progress: 120.0 s, 11817.4 tps, lat 7.738 ms stddev 6.739
	progress: 180.0 s, 11921.3 tps, lat 7.703 ms stddev 6.904
	progress: 240.0 s, 11974.0 tps, lat 7.567 ms stddev 6.249
	progress: 300.0 s, 12049.4 tps, lat 7.660 ms stddev 6.769
	progress: 360.0 s, 12142.8 tps, lat 7.529 ms stddev 6.623
	progress: 420.0 s, 12059.0 tps, lat 7.516 ms stddev 6.622
	progress: 480.0 s, 12077.9 tps, lat 7.625 ms stddev 6.706
	progress: 540.0 s, 11623.6 tps, lat 8.088 ms stddev 8.034
	progress: 600.0 s, 11981.9 tps, lat 7.680 ms stddev 6.833
	transaction type: <builtin: select only>
	scaling factor: 1000
	query mode: simple
	number of clients: 150
	number of threads: 2
	duration: 600 s
	number of transactions actually processed: 7127284
	latency average = 7.749 ms
	latency stddev = 7.141 ms
	tps = 11878.694565 (including connections establishing)
	tps = 11878.728297 (excluding connections establishing)




----------------------------------------------------------
----------------------------------------------------------
----------------------------------------------------------
SWITCHING TO 300 Clients


## Test 13:

Num clients: 300
Pooling: Disabled
Test:  Read-only

Verify:

	postgres=# SHOW shared_buffers;
	 shared_buffers
	----------------
	 500MB
	(1 row)

	postgres=# SHOW max_connections;
	 max_connections
	-----------------
	 1000
	(1 row)

	postgres=# SHOW connection_proxies;
	 connection_proxies
	--------------------
	 0
	(1 row)


pgbench command:

	/usr/local/pgsql/bin/pgbench -p 5432 -c 300 -j 2 -T 600 -P 60 -S bench_test
	starting vacuum...end.
	progress: 60.0 s, 11584.9 tps, lat 15.231 ms stddev 12.544
	progress: 120.0 s, 11705.6 tps, lat 15.412 ms stddev 11.651
	progress: 180.0 s, 11818.2 tps, lat 14.898 ms stddev 11.724
	progress: 240.0 s, 12210.1 tps, lat 14.626 ms stddev 11.556
	progress: 300.0 s, 12256.8 tps, lat 13.770 ms stddev 9.647
	progress: 360.0 s, 12237.9 tps, lat 14.117 ms stddev 10.493
	progress: 420.0 s, 12252.0 tps, lat 14.065 ms stddev 10.113
	progress: 480.0 s, 11837.9 tps, lat 15.379 ms stddev 12.733
	progress: 540.0 s, 11641.3 tps, lat 15.507 ms stddev 13.038
	progress: 601.1 s, 11607.0 tps, lat 15.108 ms stddev 15.309
	transaction type: <builtin: select only>
	scaling factor: 1000
	query mode: simple
	number of clients: 300
	number of threads: 2
	duration: 600 s
	number of transactions actually processed: 7162218
	latency average = 14.807 ms
	latency stddev = 12.338 ms
	tps = 11907.508812 (including connections establishing)
	tps = 11907.560713 (excluding connections establishing)


## Test 14:

Num clients: 300
Pooling: Enabled, 1 Proxy
Test:  Read-only

Verify:

	 shared_buffers
	----------------
	 500MB
	(1 row)

	postgres=# SHOW max_connections;
	 max_connections
	-----------------
	 1000
	(1 row)

	postgres=# SHOW connection_proxies;
	 connection_proxies
	--------------------
	 1
	(1 row)


pgbench command:

	/usr/local/pgsql/bin/pgbench -p 6543 -c 300 -j 2 -T 600 -P 60 -S bench_test
	starting vacuum...end.
	progress: 60.0 s, 10741.5 tps, lat 22.790 ms stddev 515.941
	progress: 120.0 s, 11062.3 tps, lat 26.521 ms stddev 757.304
	progress: 180.0 s, 11364.4 tps, lat 19.314 ms stddev 464.329
	progress: 240.0 s, 11866.7 tps, lat 34.409 ms stddev 1383.905
	progress: 300.0 s, 11723.6 tps, lat 21.722 ms stddev 528.038
	progress: 360.0 s, 11920.7 tps, lat 16.758 ms stddev 406.826
	progress: 420.0 s, 11762.5 tps, lat 34.436 ms stddev 1318.621
	progress: 480.0 s, 11796.5 tps, lat 15.661 ms stddev 301.710
	progress: 540.0 s, 11642.5 tps, lat 31.658 ms stddev 1261.157
	progress: 600.0 s, 11725.6 tps, lat 34.626 ms stddev 1412.526
	transaction type: <builtin: select only>
	scaling factor: 1000
	query mode: simple
	number of clients: 300
	number of threads: 2
	duration: 600 s
	number of transactions actually processed: 6936686
	latency average = 25.846 ms
	latency stddev = 944.209 ms
	tps = 11560.577874 (including connections establishing)
	tps = 11560.620187 (excluding connections establishing)


## Test 15:

Num clients: 300
Pooling: Enabled, 2 Proxies
Test:  Read-only

Verify:

	postgres=# SHOW shared_buffers;
	 shared_buffers
	----------------
	 500MB
	(1 row)

	postgres=# SHOW max_connections;
	 max_connections
	-----------------
	 1000
	(1 row)

	postgres=# SHOW connection_proxies;
	 connection_proxies
	--------------------
	 2
	(1 row)


pgbench command:

	/usr/local/pgsql/bin/pgbench -p 6543 -c 300 -j 2 -T 600 -P 60 -S bench_test
	starting vacuum...end.
	progress: 60.0 s, 14319.0 tps, lat 19.828 ms stddev 250.268
	progress: 120.0 s, 13742.1 tps, lat 21.764 ms stddev 234.250
	progress: 180.0 s, 13506.8 tps, lat 21.982 ms stddev 219.642
	progress: 240.0 s, 14118.1 tps, lat 20.605 ms stddev 235.131
	progress: 300.0 s, 13440.1 tps, lat 22.223 ms stddev 183.520
	progress: 360.0 s, 13866.8 tps, lat 20.506 ms stddev 203.613
	progress: 420.0 s, 15179.5 tps, lat 18.048 ms stddev 302.597
	progress: 480.0 s, 15317.9 tps, lat 19.027 ms stddev 497.513
	progress: 540.0 s, 15067.9 tps, lat 19.817 ms stddev 378.156
	progress: 600.0 s, 15207.5 tps, lat 21.323 ms stddev 438.186
	transaction type: <builtin: select only>
	scaling factor: 1000
	query mode: simple
	number of clients: 300
	number of threads: 2
	duration: 600 s
	number of transactions actually processed: 8626249
	latency average = 20.482 ms
	latency stddev = 316.138 ms
	tps = 14376.504985 (including connections establishing)
	tps = 14376.522635 (excluding connections establishing)




## Test 16:

Num clients: 300
Pooling: Enabled, 10 proxies
Test:  Read-only

Verify:

	postgres=# SHOW shared_buffers;
	 shared_buffers
	----------------
	 500MB
	(1 row)

	postgres=# SHOW max_connections;
	 max_connections
	-----------------
	 1000
	(1 row)

	postgres=# SHOW connection_proxies;
	 connection_proxies
	--------------------
	 10
	(1 row)


pgbench command:

	/usr/local/pgsql/bin/pgbench -p 6543 -c 300 -j 2 -T 600 -P 60 -S bench_test
	starting vacuum...end.
	progress: 60.0 s, 10872.6 tps, lat 16.362 ms stddev 23.786
	progress: 120.0 s, 11131.6 tps, lat 16.150 ms stddev 28.141
	progress: 180.0 s, 11247.5 tps, lat 15.883 ms stddev 27.060
	progress: 240.0 s, 11397.1 tps, lat 15.459 ms stddev 19.857
	progress: 300.0 s, 10606.2 tps, lat 17.984 ms stddev 32.759
	progress: 360.0 s, 10117.6 tps, lat 19.376 ms stddev 39.262
	progress: 420.0 s, 11095.9 tps, lat 16.644 ms stddev 30.990
	progress: 480.0 s, 11570.4 tps, lat 15.465 ms stddev 22.443
	progress: 540.0 s, 11633.0 tps, lat 15.390 ms stddev 21.321
	progress: 600.0 s, 10803.1 tps, lat 17.779 ms stddev 34.489
	transaction type: <builtin: select only>
	scaling factor: 1000
	query mode: simple
	number of clients: 300
	number of threads: 2
	duration: 600 s
	number of transactions actually processed: 6628726
	latency average = 16.601 ms
	latency stddev = 28.457 ms
	tps = 11047.739368 (including connections establishing)
	tps = 11047.763906 (excluding connections establishing)




## Test 17:

Num clients: 600
Pooling: Disabled
Test:  Read-only

Verify:

	postgres=# SHOW shared_buffers;
	 shared_buffers
	----------------
	 500MB
	(1 row)

	postgres=# SHOW max_connections;
	 max_connections
	-----------------
	 1000
	(1 row)

	postgres=# SHOW connection_proxies;
	 connection_proxies
	--------------------
	 0
	(1 row)



pgbench command:

	/usr/local/pgsql/bin/pgbench -p 5432 -c 600 -j 2 -T 600 -P 60 -S bench_test


DIES!  CPU load > 80 (w/ 2 cores...)


	client 299 aborted in command 1 (SQL) of script 0; perhaps the backend died while processing
	client 69 aborted in command 1 (SQL) of script 0; perhaps the backend died while processing
	WARNING:  terminating connection because of crash of another server process
	DETAIL:  The postmaster has commanded this server process to roll back the current transaction and exit, because another server process exited abnormally and possibly corrupted shared memory.
	HINT:  In a moment you should be able to reconnect to the database and repeat your command.
	client 90 script 0 aborted in command 1 query 1: server closed the connection unexpectedly
	        This probably means the server terminated abnormally
	        before or while processing the request.
	client 95 aborted in command 1 (SQL) of script 0; perhaps the backend died while processing
	client 282 aborted in command 1 (SQL) of script 0; perhaps the backend died while processing
	transaction type: <builtin: select only>
	scaling factor: 1000
	query mode: simple
	number of clients: 600
	number of threads: 2
	duration: 600 s
	number of transactions actually processed: 117103
	latency average = 153.485 ms
	latency stddev = 1270.084 ms
	tps = 2695.456608 (including connections establishing)
	tps = 2695.605809 (excluding connections establishing)
	Run was aborted; the above results are incomplete.





## Test 18:

Num clients: 600
Pooling: Enabled, 2 proxies
Test:  Read-only

Verify:

	postgres=# SHOW shared_buffers;
	 shared_buffers
	----------------
	 500MB
	(1 row)

	postgres=# SHOW max_connections;
	 max_connections
	-----------------
	 1000
	(1 row)

	postgres=# SHOW connection_proxies;
	 connection_proxies
	--------------------
	 2
	(1 row)



pgbench command:

	/usr/local/pgsql/bin/pgbench -p 6543 -c 600 -j 2 -T 600 -P 60 -S bench_test
	starting vacuum...end.
	progress: 60.0 s, 14208.9 tps, lat 40.295 ms stddev 512.094
	progress: 120.0 s, 14123.8 tps, lat 40.499 ms stddev 463.715
	progress: 180.0 s, 14253.9 tps, lat 41.068 ms stddev 478.437
	progress: 240.0 s, 14485.7 tps, lat 41.143 ms stddev 600.954
	progress: 300.0 s, 14085.9 tps, lat 41.116 ms stddev 532.002
	progress: 360.0 s, 14844.1 tps, lat 34.920 ms stddev 540.227
	progress: 420.0 s, 13930.4 tps, lat 47.470 ms stddev 751.797
	progress: 480.0 s, 13570.8 tps, lat 43.644 ms stddev 361.521
	progress: 540.0 s, 13146.2 tps, lat 43.754 ms stddev 363.543
	progress: 600.0 s, 13255.2 tps, lat 43.811 ms stddev 357.726
	transaction type: <builtin: select only>
	scaling factor: 1000
	query mode: simple
	number of clients: 600
	number of threads: 2
	duration: 600 s
	number of transactions actually processed: 8394896
	latency average = 41.794 ms
	latency stddev = 512.309 ms
	tps = 13990.375165 (including connections establishing)
	tps = 13990.387004 (excluding connections establishing)


