[gdal-dev] Different results when reading a GeoTIFF with GDAL 2.1.2 vs 3.x

Momtchil Momtchev momtchil at momtchev.com
Sun Dec 29 14:22:16 PST 2019


     I did make distclean after each configure change.


     I found some other reports about SSE problems on Phenom II 9xx.

     This is the exact part number: HDZ965FBK4DGM

http://www.cpu-world.com/CPUs/K10/AMD-Phenom%20II%20X4%20965%20Black%20Edition%20-%20HDZ965FBK4DGM%20(HDZ965FBGMBOX).html

     It is a CPU that claims SSE3 support but Linux does not recognize 
it as such.

     Both the machines that give incorrect results have exactly this 
part number.


     Let me me modify the SSE3 detection code.


On 29/12/2019 22:57, Even Rouault wrote:
> On dimanche 29 décembre 2019 22:36:24 CET Momtchil Momtchev wrote:
>>       Disabling HAVE_SSSE3_AT_COMPILE_TIME had no effect,
> Make sure you run "make clean" after running ./configure
>
>> but after
>> short-circuiting the #ifdef I got a correct result.
> Hum so it seems that the SSSE3 detection doesn't work properly.
>
> Can you :
>
> 1. undo your code changes
>
> 2. modify port/cpl_cpu_features.cpp at line 98 to replace the code of the
> CPLDetectSSE3() function by
>
> static inline bool CPLDetectSSE3()
> {
>      int cpuinfo[4] = { 0, 0, 0, 0 };
>      CPL_CPUID(0, cpuinfo);
>      if( cpuinfo[REG_EAX] <= 0 )
>          return false;
>      CPL_CPUID(1, cpuinfo);
>      return (cpuinfo[REG_ECX] & (1 << CPUID_SSSE3_ECX_BIT)) != 0;
> }
>
> (note: this function should really be called CPLDetectSSSE3 ... missing S...
> but that doesn't matter)
>
> 3. modify port/cpl_cpu_features.h to add just after line 47 "#if __SSSE3__" a
> new line with "dummy" as content. Normally this shouldn't be compiled... but
> this is just to make sure the compiler doesn't define SSSE3 as available
> unconditionnally at runtime.
>
> 4. run configure again *without* disabling ssse3
> 5. make clean
> 6. make (possibly with -j something)
>
>
-- 
Momtchil Momtchev <momtchil at momtchev.com>



More information about the gdal-dev mailing list