[ODE] ODE and SIMD
Rodrigo Hernandez
kwizatz at aeongames.com
Mon Nov 27 09:10:33 MST 2006
ODE vectors are already dReal[4], other than that is better for the
variables to be aligned at 16 bit
memory boundaries.
Vrej Melkonian wrote:
> Thanks, I previously had asked how SSE could be used
> on Windows platform but nobody knew, because gcc
> inserts SSE instructions.
>
> Also, I pretty sure the vectors need to be 4D.
>
>
> --- Francisco Leon <projectileman at yahoo.com> wrote:
>
>
>> ODE uses macros widely for vector operations, so it
>> could take advantage of SIMD instructions implicity.
>>
>> Modern compilers translate macros to SIMD
>> instructions
>> by default, if you configure the project for
>> generating MMX/Pentium 3 instructions.
>>
>> For example, you can configure MingW compiler for
>> generate machine code for Pentium3 or Athlon
>> plattforms, wich could result in fast code as the
>> compiler decides where to put SIMD instructions in
>> the
>> program.
>>
>> In my own benchmarking I've discovered that a vector
>> library that uses c++ templates (Like Blitz) is
>> often
>> faster than those which have SIMD assembler
>> instructions (Like NVEC or SIMDx86 libraries).
>>
>> So I think that it would better to leave the
>> low-level
>> optimizations to the compiler. Microsoft people are
>> wise enough for putting all necessary gadgets into
>> their C++ compiler. Just Trust in your compiler, it
>> is
>> more intelligent than You!! ;)
>>
>> One way for optimizing ODE is reducing the use of
>> linked lists, and pack structures in vectors. That
>> will helps the CPU work because it reduces cache
>> filling.
>>
>> Also we can optimize ODE by using alternative math
>> functions for Sqrt and trigonometry functions.
>> Making
>> Sine and Cosine tables and using the GIMPACT SQRT
>> function would be helpful.
>>
>>
>
>
>
>
> ____________________________________________________________________________________
> Want to start your own business?
> Learn how on Yahoo! Small Business.
> http://smallbusiness.yahoo.com/r-index
> _______________________________________________
> ODE mailing list
> ODE at q12.org
> http://q12.org/mailman/listinfo/ode
>
>
More information about the ODE
mailing list