Search Postgresql Archives

Re: Memory Usage and OpenBSD

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Greg Smith wrote:
Jeff Ross wrote:
pgbench is run with this:
pgbench -h varley.openvistas.net -U _postgresql -t 20000 -c $SCALE pgbench with scale starting at 10 and then incrementing by 10. I call it three times for each scale. I've turned on logging to 'all' to try and help figure out where the system panics, so that may lower the TPS somewhat but I have not been very favorably impressed with the speed of these U320 15K disks in RAID10 yet.

"-c" sets the number of clients active at once. pgbench has a database scale option when you're initializing, "-s", that sets how many records are in the tables, and therefore how large the database is. If you don't set the scale to a larger number, so that "-c" > "-s", you'll get bad performance results. The way you're saying scale but changing the client numbers is a little confusing.


My bad.  I know that more information is better than too little.

I think I'm doing it right. Here's the whole script. I run it from another server on the lan.

#!/bin/sh
#use this to automate pg_bench load
MAX_SCALE=150
HOST=varley.openvistas.net
SCALE=70
rm -rf /tmp/pgbench_results_scale*
while [ $SCALE -ne $MAX_SCALE ] ; do
pgbench -i -s $SCALE -h $HOST -U _postgresql pgbench | tee -a /tmp/pgbench_results_scale_$SCALE.txt vacuumdb --analyze -h $HOST -U _postgresql pgbench | tee -a /tmp/pgbench_results_scale_$SCALE.txt psql -h $HOST -U _postgresql -c "checkpoint;" pgbench | tee -a /tmp/pgbench_results_scale_$SCALE.txt psql -h $HOST -U _postgresql -c "SELECT relname, reltuples, pg_size_pretty(relpages * 8192) as size FROM pg_class \ where relname like ('%account%');" pgbench | tee -a /tmp/pgbench_results_scale_$SCALE.txt psql -h $HOST -U _postgresql -c "select pg_size_pretty(pg_database_size(oid)) from pg_database \ where datname = 'pgbench';" pgbench | tee -a /tmp/pgbench_results_scale_$SCALE.txt time pgbench -h $HOST -U _postgresql -t 20000 -c $SCALE pgbench | tee -a /tmp/pgbench_results_scale_$SCALE.txt time pgbench -h $HOST -U _postgresql -t 20000 -c $SCALE pgbench | tee -a /tmp/pgbench_results_scale_$SCALE.txt time pgbench -h $HOST -U _postgresql -t 20000 -c $SCALE pgbench | tee -a /tmp/pgbench_results_scale_$SCALE.txt cat /tmp/pgbench_results_scale_$SCALE.txt | mail -s "Results for Scale $SCALE" jross@xxxxxxxxxxxxxx
 let SCALE=$SCALE+10

done


I can't comment how whether yours are good or bad numbers without knowing the actual database scale number. When reporting a pgbench result, it's handy to include the complete output from one of the runs, just so people can see exactly what test was run. After that you can just show the TPS values. Showing the command used to initialize the pgbench database can also be helpful.


And here's the whole output of scale = 70. It made it throught this last time without panickinging, but then did panic on scale=80.

CHECKPOINT
relname | reltuples | size -----------------------+-------------+--------
pgbench_accounts_pkey |       7e+06 | 120 MB
pgbench_accounts      | 6.99985e+06 | 868 MB
(2 rows)

pg_size_pretty ----------------
994 MB
(1 row)

transaction type: TPC-B (sort of)
scaling factor: 70
query mode: simple
number of clients: 70
number of transactions per client: 20000
number of transactions actually processed: 1400000/1400000
tps = 293.081245 (including connections establishing)
tps = 293.124705 (excluding connections establishing)
transaction type: TPC-B (sort of)
scaling factor: 70
query mode: simple
number of clients: 70
number of transactions per client: 20000
number of transactions actually processed: 1400000/1400000
tps = 332.154154 (including connections establishing)
tps = 332.219275 (excluding connections establishing)
transaction type: TPC-B (sort of)
scaling factor: 70
query mode: simple
number of clients: 70
number of transactions per client: 20000
number of transactions actually processed: 1400000/1400000
tps = 354.983013 (including connections establishing)
tps = 355.181403 (excluding connections establishing)




--
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux