[dpdk-dev] Build failures in 21.11-rc2

Medvedkin, Vladimir vladimir.medvedkin at intel.com
Tue Nov 9 17:44:04 CET 2021


Hi all,

It looks like the problem caused by the lack of _mm512_set1_epi8() 
implementation inside the gcc8, however _mm512_set1_epi[16,32,64] has 
been implemented.
I replaced it with _mm512_set1_epi32 and on gcc8 it builds fine. I'll 
send a fix soon.

On 09/11/2021 17:22, Lance Richardson wrote:
> Based on the CI build logs, the target architecture was Skylake, which
> supports AVX512 but doesn't support GFNI.
> 
> On Tue, Nov 9, 2021 at 11:15 AM Thomas Monjalon <thomas at monjalon.net> wrote:
>>
>> 09/11/2021 17:12, Lance Richardson:
>>> Do the machines used for the CentOS 8 CI builds support AVX512?
>>
>> Probably not. OK thank you.
>>
>>> The failing build is on an Ice Lake server with:
>>>       meson -Dmachine=native build
>>>       ninja -C build
>>>
>>> On Tue, Nov 9, 2021 at 11:08 AM Thomas Monjalon <thomas at monjalon.net> wrote:
>>>> 09/11/2021 16:57, David Marchand:
>>>>> On Tue, Nov 9, 2021 at 4:53 PM Lance Richardson
>>>>> <lance.richardson at broadcom.com> wrote:
>>>>>>
>>>>>> 21.11-rc2 builds are failing on CentOS 8.4, apparently because
>>>>>> the intrinsic _mm512_set_epi8() is not defined in the GCC
>>>>>> headers (see example below).
>>>>>
>>>>> Thanks for reporting Lance.
>>>>> It rings a bell, think it was mentionned in the past.
>>>>
>>>> CI compilation was passing:
>>>> http://mails.dpdk.org/archives/test-report/2021-November/238534.html
>>>> I would like to better understand.
>>>>
>>>> [...]
>>>>>> Here is a GCC patch to add this intrinsic:
>>>>>> https://www.mail-archive.com/gcc-patches@gcc.gnu.org/msg188664.html
>>>>>>
>>>>>> BTW, GCC 10.2.1 (via "scl enable gcc-toolset-10") is able to build
>>>>>> 21.11-rc2 successfully on CentOS 8.4.
>>>>>>
>>>>>>      Lance
>>>>>>
>>>>>> # gcc --version
>>>>>> gcc (GCC) 8.4.1 20200928 (Red Hat 8.4.1-1)
>>>> [...]
>>>>>> ../lib/hash/rte_thash_x86_gfni.h:59:24: error: implicit declaration of
>>>>>> function ‘_mm512_set_epi8’; did you mean ‘_mm512_set1_epi8’?
>>>>
>>>> What is different in your setup compared to the CI?
>>
>>
>>

-- 
Regards,
Vladimir


More information about the dev mailing list