Optimizations of DMD

Daniel Keep daniel.keep.lists at gmail.com
Fri Mar 2 22:09:18 PST 2007



Howard Berkey wrote:
> janderson Wrote:
> 
>> Orgoton wrote:
>>> Does DMD perform processor specific optimizations? Does it make use of MMX, SSE and other such extensions? I am creating high performance applications and these optimizations would really come in handy.
>> Not at the moment (as far as I know), although there have been some long 
>> discussions about it.  Of course you can always do it in ASM. 
>> Performance wise, you should be able to get near or better then C++.
>>
>> PS - I'm looking forward to seeing these in D as well.
>>
>> -Joel
> 
> 
> I was thinking that some kind of standardized vector intrinsic interface would be really cool.  Think std.intrinsic or Tango's core.intrinsic, extended to vectorized types, with one interface for various underlying implementations.  I don't know enough about the functional overlap of AltiVec with x86 SIMD to know if it is feasible or not though, especially if things like alignment contraints are different for each set.
> 

Some time ago, I wrote a simple library that extended arrays of basic
types with parallel operations (like add, mult, madd, etc.) that were
coded in MMX.  Never bothered to publish it since I wasn't sure if it
was actually useful or not...

That said, it's certainly possible to add some of this stuff in library
code.  It's definitely worth doing it if only because you need to teach
yourself some assembler to do it.

	-- Daniel

-- 
Unlike Knuth, I have neither proven or tried the above; it may not even
make sense.

v2sw5+8Yhw5ln4+5pr6OFPma8u6+7Lw4Tm6+7l6+7D
i28a2Xs3MSr2e4/6+7t4TNSMb6HTOp5en5g6RAHCP  http://hackerkey.com/



More information about the Digitalmars-d mailing list