Re: [Development] State of x86 SIMD in Qt

2012-01-03 Thread lars.knoll
On 12/29/11 8:48 PM, "ext Thiago Macieira" wrote: > >I'm thinking the whole architecture might need to change: > >gcc $ make .obj/release-shared/qdrawhelper.o |& grep -c LOOP\ VECTORIZED >112 > >icc $ make .obj/release-shared/qdrawhelper.o |& grep -c LOOP\ WAS\ >VECTORIZED >107 > >This file alon

Re: [Development] State of x86 SIMD in Qt

2012-01-03 Thread lars.knoll
On 12/30/11 10:26 PM, "ext Thiago Macieira" wrote: >On Thursday, 29 de December de 2011 15.16.19, jason.bar...@nokia.com >wrote: >> Hi Thiago, >> >> > I can get started, but I need to know: how is this code tested? How >>can I >> > verify that things are working? >> The best way to test this i

Re: [Development] State of x86 SIMD in Qt

2011-12-30 Thread Thiago Macieira
On Thursday, 29 de December de 2011 15.16.19, jason.bar...@nokia.com wrote: > Hi Thiago, > > > I can get started, but I need to know: how is this code tested? How can I > > verify that things are working? > The best way to test this is to run the lancelot autotests to verify that > the output of

Re: [Development] State of x86 SIMD in Qt

2011-12-29 Thread Thiago Macieira
On Thursday, 29 de December de 2011 17.00.09, Thiago Macieira wrote: > 1) Drop the MMX code and the 3dNow! extensions now Report. These are the functions being dropped and their impact: [where XXX is mmx, sse, mmx3dnow and sse3dnow, YYY are composition modes] - qt_blend_color_argb_XXX Impect: no

Re: [Development] State of x86 SIMD in Qt

2011-12-29 Thread Thiago Macieira
On Thursday, 29 de December de 2011 12.12.53, Thiago Macieira wrote: > 1) immediately disable the use of MMX technology registers in 64-bit mode. > Turns out that this is already supported in the code because MSVC in 64-bit > mode does not offer MMX support. We only need to apply this to GCC and IC

Re: [Development] State of x86 SIMD in Qt

2011-12-29 Thread jason.barron
Hi Thiago, > I can get started, but I need to know: how is this code tested? How can I > verify that things are working? The best way to test this is to run the lancelot autotests to verify that the output of the raster engine is the same before and after. The code for the baseline server is

[Development] State of x86 SIMD in Qt

2011-12-29 Thread Thiago Macieira
Hello [Glossary at the bottom] I began adding an AVX-mode build for certain files in Qt. While I don't plan on writing new routines using AVX instructions, the presence of the VEX prefix should already improve performance. It was quite easy to do so for qimage_sse2 and qimage_ssse3, which are new