By 'move' do you mean process calculations on the CPU? You would be
describing SIMD and really bad MMX style SIMD at that. Modern CPUs
have 128 bit wide vector units like Altivec and SSE which are
fantastic if actually used.
the main question is, what can the compiler actually do with the
hardware ...
i'm not familiar with the amd64 architecture, but i suppose it's similar
to simd instructions ...
- to use them, the memory regions have to be aligned ... otherwise it
would not take the optimum of one command move data from memory to
registers
- it can only be used if algorithms _can_ be vectorized ... that's not a
problem with simple multiplications, but complex algorithms like
filters, or interpolation algorithms will not take advantage of
that...
- and the compiler will have to know the instructions and _use_ them ...
as for now i can say that any compiler i tried (gcc 3.2/3.3, icc) had
problems generating the optimal sse instructions ... (this is possibly
related to dsp block allocation as it's done in pd at the moment)
that's why i somehow doubt that 64bit processors will bring a huge
speedup for dsp algorithms ...
cheers ... tim
--
mailto:TimBlechmann@gmx.de ICQ: 96771783
http://www.mokabar.tk
After one look at this planet any visitor from outer space
would say "I want to see the manager."
William S. Burroughs