[FFmpeg-devel] [PATCH 03/11] avutil: detect when AVX-512 is available

James Darnley jdarnley at obe.tv
Mon Nov 20 13:21:45 EET 2017


On 2017-11-10 03:11, James Almer wrote:
> On 11/9/2017 8:58 AM, James Darnley wrote:
>> @@ -154,6 +155,13 @@ int ff_get_cpu_flags_x86(void)
>>              if (ebx & 0x00000100)
>>                  rval |= AV_CPU_FLAG_BMI2;
>>          }
>> +#if HAVE_AVX512 /* F, CD, BW, DQ, VL */
> 
> Nit: Maybe move this chunk inside the HAVE_AVX2 block, at the end of it,
> right above the BMI checks.

I am preparing a final patch set and I forgot to ask you this at the
time.  Do you want me to put the new check inside the AVX2 if(){} block
too? Or just in the preprocessor #if #endif?

>> +        if ((xcr0_lo & 0xe6) == 0xe6) {
> 
> Nit: The proper check here i think would be
> 
> if ((xcr0_lo & 0xe0) == 0xe0) {
>     if ((rval & AV_CPU_FLAG_AVX) && (ebx & 0xd0030000) == 0xd0030000)
>         rval |= AV_CPU_FLAG_AVX512;
> }
> 
> But it's functionally the same.

Ah.  Make it dependent on previous checks that have already checked for
features.  Did you mean AVX or AVX2 in this "(rval & AV_CPU_FLAG_AVX)"?



More information about the ffmpeg-devel mailing list