On Thu, Oct 6, 2016 at 11:38 AM, Robert Haas <robertmh...@gmail.com> wrote:
> Hi, > > I decided to do some testing on hydra (IBM-provided community > resource, POWER, 16 cores/64 threads, kernel 3.2.6-3.fc16.ppc64) using > the newly-enhanced wait event stuff to try to get an idea of what > we're waiting for during pgbench. I did 30-minute pgbench runs with > various configurations, but all had max_connections = 200, > shared_buffers = 8GB, maintenance_work_mem = 4GB, synchronous_commit = > off, checkpoint_timeout = 15min, checkpoint_completion_target = 0.9, > log_line_prefix = '%t [%p] ', max_wal_size = 40GB, log_checkpoints = > on. During each run, I ran this psql script in another window and > captured the output: > > \t > select wait_event_type, wait_event from pg_stat_activity where pid != > pg_backend_pid() > \watch 0.5 > > Then, I used a little shell-scripting to count up the number of times > each wait event occurred in the output. First, I tried scale factor > 3000 with 32 clients and got these results: > Scale factor 3000 obviously doesn't fit in shared_buffers. But does it fit in RAM? That is, are the backends doing real IO, or they just doing fake IO to the kernel's fs cache? Cheers, Jeff