From: | Heikki Linnakangas <hlinnaka(at)iki(dot)fi> |
---|---|
To: | Simon Riggs <simon(at)2ndQuadrant(dot)com> |
Cc: | pgsql-hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: [COMMITTERS] pgsql: Use Intel SSE 4.2 CRC instructions where available. |
Date: | 2015-04-14 15:34:31 |
Message-ID: | 552D3387.7090807@iki.fi |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers pgsql-hackers |
On 04/14/2015 06:28 PM, Simon Riggs wrote:
> On 14 April 2015 at 10:09, Heikki Linnakangas <heikki(dot)linnakangas(at)iki(dot)fi> wrote:
>
>> Abhijit Menon-Sen, heavily modified by me, reviewed by Andres Freund.
>
> Did the heavy modifications have any affect on the patch behaviour, or
> was this just related to where you would like to put the code?
Didn't affect behaviour.
Hmm, the buildfarm animals using Intel C compiler didn't like this
patch. The problem seems to be that unlike on gcc and clang, icc always
has the SSE 4.2 intrinsics (_mm_crc32_u64, _mm_crc32_u8 etc.), even when
the target CPU architecture is not SSE 4.2. On gcc/clang, those
intrinsics are not defined unless you build with -msse4.2.
I'll try to find a fix. I think we could use the __SSE4_2__ define to
check whether SSE4.2 is targeted. Or we can punt and always build the
version with the runtime check, unless overridden manually at configure
command line.
- Heikki
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2015-04-14 15:40:11 | Re: pgsql: Use Intel SSE 4.2 CRC instructions where available. |
Previous Message | Alvaro Herrera | 2015-04-14 15:28:36 | pgsql: Fix typo in comment |
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2015-04-14 15:40:11 | Re: pgsql: Use Intel SSE 4.2 CRC instructions where available. |
Previous Message | Simon Riggs | 2015-04-14 15:28:26 | Re: pgsql: Use Intel SSE 4.2 CRC instructions where available. |