On 2013-03-23 15:36:03 +0200, Ants Aasma wrote: > On Sat, Mar 23, 2013 at 3:10 PM, Andres Freund <and...@2ndquadrant.com> wrote: > >> Andres showed that switching out the existing CRC for zlib's would > >> result in 8-30% increase in INSERT-SELECT speed > >> (http://www.postgresql.org/message-id/201005202227.49990.and...@anarazel.de) > >> with the speeded up CRC still showing up as 10% of the profile. So I > >> guess another 5% speedup by doing the CRC 8 bytes at a time instead of > >> the used 4. And another couple % by using Fletcher or SIMD. > > > > I am not sure the considerations for WAL are the same as for page checksums > > - > > the current WAL code only computes the CRCs in rather small chunks, so very > > pipelineable algorithms/implementations don't necessarly show the same > > benefit > > for WAL as they do for page checksums... > > Sure, but I think that WAL checksums are not a big overhead in that case > anyway.
I have seen profiles that indicate rather the contrary... Even in the optimal case of no FPWs a single heap_insert() results in the CRC computed in 5 steps or so. 4 of them over potentially noncontiguous pointer addressed memory. If you add an index or two where the situation is the same the slowdown is not all that surprising. Greetings, Andres Freund -- Andres Freund http://www.2ndQuadrant.com/ PostgreSQL Development, 24x7 Support, Training & Services -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers