Re: POC: Cache data in GetSnapshotData() - Mailing list pgsql-hackers

From Robert Haas
Subject Re: POC: Cache data in GetSnapshotData()
Date
Msg-id CA+TgmoapMXzCGFvjRYRoYAnCwpYf+d2itXx0nA-oSg+rGNOOFQ@mail.gmail.com
Whole thread Raw
In response to Re: POC: Cache data in GetSnapshotData()  (Mithun Cy <mithun.cy@enterprisedb.com>)
Responses Re: POC: Cache data in GetSnapshotData()
List pgsql-hackers
On Thu, Mar 3, 2016 at 6:20 AM, Mithun Cy <mithun.cy@enterprisedb.com> wrote:

On Tue, Mar 1, 2016 at 12:59 PM, Amit Kapila <amit.kapila16@gmail.com> wrote:
>Don't we need to add this only when the xid of current transaction is valid?  Also, I think it will be better if we can explain why we need to add the our >own transaction id while caching the snapshot.
I have fixed the same thing and patch is attached.

Some more tests done after that

pgbench write tests: on 8 socket, 64 core machine.

/postgres -c shared_buffers=16GB -N 200 -c min_wal_size=15GB -c max_wal_size=20GB -c checkpoint_timeout=900 -c maintenance_work_mem=1GB -c checkpoint_completion_target=0.9

./pgbench -c $clients -j $clients -T 1800 -M prepared postgres

Inline image 3

A small improvement in performance at 64 thread.

What if you apply both this and Amit's clog control log patch(es)?  Maybe the combination of the two helps substantially more than either one alone.

Or maybe not, but seems worth checking.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company
Attachment

pgsql-hackers by date:

Previous
From: Robert Haas
Date:
Subject: Re: pgbench small bug fix
Next
From: Masahiko Sawada
Date:
Subject: Re: Support for N synchronous standby servers - take 2