On Wed, 18 Jan 2006 14:58:16 +0100 IOhannes m zmoelnig zmoelnig@iem.at wrote:
while the tastes differ, i have found it most convenient to write SIMD-code not in assembler but rather in intrinsics (C-like function-wrappers around assembler): apart from taste this has also the benefit of being portable across different compilers (e.g. you can use the same implementation for both gcc and icc and m$vc).
after implementing a lot of stuff both with intrinsics and with inline assembler, i have to say, that inline assembler can be the faster possibility, and i'd try to formulate every algorithm with inline assembler first to avoid register problems, but intrinsics have the advantage of being compiler/architecture independent ... some of my assembler code doesn't work on the x86_64 architecture, because of different implementation of pointer arithmetics ...
on the other hand, intrinsics do not produce the optimal code (at least gcc and icc don't) ... still faster than plain c ...
tim