Re: Questions about checksum feature in 9.3

From: Ants Aasma <ants(at)cybertec(dot)at>
To: Kevin <kevo(at)gatorgraphics(dot)com>
Cc: PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Questions about checksum feature in 9.3
Date: 2013-09-16 14:45:16
Message-ID: CA+CSw_ug1SGzkQDrzmV6L8So=3RUiW6PL=rmdg5LM5DL88dk3g@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Sun, Sep 15, 2013 at 8:13 AM, Kevin <kevo(at)gatorgraphics(dot)com> wrote:
> My attempts to compile it vectorized on OS X seemed to have failed since I don't find a vector instruction in the .o file even though the options -msse4.1 -funroll-loops -ftree-vectorize should be supported according to the man page for Apple's llvm-gcc.

I'm not sure what version of LLVM Apple is using for llvm-gcc. I know
that clang+llvm 3.3 can successfully vectorize the checksum algorithm
when -O3 is used.

> So, has anyone compiled checksum vectorized on OS X? Are there any performance data that would indicate whether or not I should worry with this in the first place?

Even without vectorization the worst case performance hit is about
20%. This is for a workload that is fully bottlenecked on swapping
pages in between shared buffers and OS cache. In real world cases it's
hard to imagine it having any measurable effect. A single core can
checksum several gigabytes per second of I/O without vectorization,
and about 30GB/s with vectorization.

Regards,
Ants Aasma
--
Cybertec Schönig & Schönig GmbH
Gröhrmühlgasse 26
A-2700 Wiener Neustadt
Web: http://www.postgresql-support.de

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message David Johnston 2013-09-16 15:14:39 Re: Questions about checksum feature in 9.3
Previous Message Andres Freund 2013-09-16 14:38:46 Re: Support for REINDEX CONCURRENTLY