spikes in pgbench read-only results

From: Tomas Vondra <tv(at)fuzzy(dot)cz>
To: pgsql-performance(at)postgresql(dot)org
Subject: spikes in pgbench read-only results
Date: 2012-01-22 23:17:18
Message-ID: 4F1C98FE.1030307@fuzzy.cz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-performance

Hi,

I'm working on a benchmark that demonstrates the effects of moving
tables or indexes to separate devices (SSD and HDD), and one thing that
really caught my eye are spikes in the tps charts. See this:

http://www.fuzzy.cz/tmp/data-indexes/indexes.html

The first one is a database with data on an SSD and indexes on 7.2k HDD.
Around 2:00, the performance significantly grows (over 4k tps) and then
falls to about 500 tps (which is maintained for the remainder of the
benchmark).

I've seen similar spikes on HDD (both data and indexes on the same
device) - that's the second chart. The difference is not that huge, but
the spike at around 6:00 is noticeable.

Interestingly, by separating the data and indexes to two 7.2k drives,
the spike disappears - that's the third chart.

Any ideas why this happens? Is this a pgbench-only anomaly that does not
happen in real-world scenarios?

My theory is that it's related to the strategy that chooses what to keep
in shared_buffers (or page cache), and that somehow does not work too
well in this case.

regards
Tomas

Responses

Browse pgsql-performance by date

  From Date Subject
Next Message Merlin Moncure 2012-01-23 17:03:17 Re: spikes in pgbench read-only results
Previous Message Tomas Vondra 2012-01-22 23:07:01 Re: wal_level=archive gives better performance than minimal - why?