From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | John Naylor <johncnaylorls(at)gmail(dot)com> |
Cc: | Andy Fan <zhihuifan1213(at)163(dot)com>, "Devulapalli, Raghuveer" <raghuveer(dot)devulapalli(at)intel(dot)com>, Nathan Bossart <nathandbossart(at)gmail(dot)com>, Jesper Pedersen <jesperpedersen(dot)db(at)gmail(dot)com>, Tomas Vondra <tomas(at)vondra(dot)me>, "pgsql-hackers(at)lists(dot)postgresql(dot)org" <pgsql-hackers(at)lists(dot)postgresql(dot)org>, "Shankaran, Akash" <akash(dot)shankaran(at)intel(dot)com> |
Subject: | Re: Improve CRC32C performance on SSE4.2 |
Date: | 2025-06-23 14:51:21 |
Message-ID: | 3350336.1750690281@sss.pgh.pa.us |
Views: | Whole Thread | Raw Message | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
John Naylor <johncnaylorls(at)gmail(dot)com> writes:
> Pushed, thanks everyone!
This has broken the build completely on my RHEL8 x86_64 box,
with gcc 8.5.0:
$ ./configure ...
$ make -s
pg_crc32c_sse42.c: In function 'pg_comp_crc32c_avx512':
pg_crc32c_sse42.c:126:25: warning: implicit declaration of function '_mm512_zextsi128_si512'; did you mean '_mm512_castsi128_si512'? [-Wimplicit-function-declaration]
x0 = _mm512_xor_si512(_mm512_zextsi128_si512(_mm_cvtsi32_si128(crc0)), x0);
^~~~~~~~~~~~~~~~~~~~~~
_mm512_castsi128_si512
pg_crc32c_sse42.c:126:25: error: incompatible type for argument 1 of '_mm512_xor_si512'
x0 = _mm512_xor_si512(_mm512_zextsi128_si512(_mm_cvtsi32_si128(crc0)), x0);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/lib/gcc/x86_64-redhat-linux/8/include/immintrin.h:45,
from pg_crc32c_sse42.c:19:
/usr/lib/gcc/x86_64-redhat-linux/8/include/avx512fintrin.h:7267:27: note: expected '__m512i' {aka '__vector(8) long long int'} but argument is of type 'int'
_mm512_xor_si512 (__m512i __A, __m512i __B)
~~~~~~~~^~~
make[2]: *** [<builtin>: pg_crc32c_sse42.o] Error 1
I see similar symptoms on buildfarm animal conchuela, which
is DragonFly BSD of some vintage or other. Not sure why
more animals aren't complaining. Anyway, it seems that the
configure probe to see if this facility is available had
better be adjusted to match the new code.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Nathan Bossart | 2025-06-23 15:05:49 | Re: Improve CRC32C performance on SSE4.2 |
Previous Message | Christoph Berg | 2025-06-23 14:48:27 | Re: pgsql: Introduce pg_shmem_allocations_numa view |