On Wed, Feb 15, 2017 at 2:15 PM, Andres Freund <and...@anarazel.de> wrote: > I don't think that's true for several reasons. Separating out PGXACT > didn't just mean reducing the stride size of the access / preventing > sharing. It also meant that frequently changing fields in PGPROC aren't > on the same cache-line as fields in PGXACT. That makes quite a > difference, because with the split a lot of the cachelines "backing" > PGPROC can stay in 'shared' mode in several CPU caches, while > modifications to PGPROC largely can stay in 'exclusive' mode locally on > the CPU the backend is currently running on. I think I previously > mentioned, even just removing the MyPgXact->xmin assignment in > SnapshotResetXmin() is measurable performance wise and cache-hit ratio > wise.
Oh, hmm. I didn't think about that angle. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers