Opened 9 years ago

Closed 9 years ago

Last modified 9 years ago

#5740 closed defect (fixed)

Runtime SSE detection

Reported by: qboosh Owned by: warmerdam
Priority: normal Milestone: 2.0.0
Component: default Version: unspecified
Severity: normal Keywords:
Cc:

Description

In alg/gdalgrid.cpp there are some SSE-optimized variants of routines, but the SSE and non-SSE code is placed in the same file. Because gcc when compiling with -msse flag is allowed to emit SSE instructions anywhere in all compilation unit, it needs the same approach as AVX support, i.e. placing SSE code in separate compilation unit and compiling only this single file with -msse flag.

Example solution (against gdal 1.11.1) is attached.

Attachments (1)

gdal-sse.patch (19.5 KB ) - added by qboosh 9 years ago.
Isolate SSE code in separate compilation unit, compiled with -msse.

Download all attachments as: .zip

Change History (5)

by qboosh, 9 years ago

Attachment: gdal-sse.patch added

Isolate SSE code in separate compilation unit, compiled with -msse.

comment:1 by Even Rouault, 9 years ago

Hum, this is probably correct, but are there actually Intel platforms those days without SSE support ?

comment:2 by qboosh, 9 years ago

Mainstream Intel/AMD CPUs have SSE since ~10 years, but AMD Geode got SSE support later and there are many embedded units with limited extensions...

comment:3 by Even Rouault, 9 years ago

Milestone: 2.0
Resolution: fixed
Status: newclosed

trunk r28033 "Move gdalgrid SSE specialized implementation into a separate compilation unit (patch by qboosh, #5740)"

comment:4 by Even Rouault, 9 years ago

Milestone: 2.02.0.0

Milestone renamed

Note: See TracTickets for help on using tickets.