SIMD support...

Walter Bright newshound2 at digitalmars.com
Fri Jan 6 16:52:19 PST 2012


On 1/6/2012 4:12 PM, Manu wrote:
> Come on IRC? This requires involved conversation.

I'm on skype.

> I'm sure you realise how much more work this is...

Actually, not that much. Surprising, no? <g> I already think I did the hard 
stuff already by supporting SIMD for float/double.


> Why would you commit to this right off the bat? Why not produce the simple
> primitive type, and allow me the opportunity to try it with the libraries before
> polluting the language its self with a massive volume of stuff...
> I'm genuinely concerned that once you add this to the language, it's done, and
> it'll be stuck there like lots of other debatable features... we can tweak the
> library implementation as we gain experience with usage of the feature.

If it doesn't work, we can back it out. I'm willing to add it as an experimental 
feature because I don't see it breaking any existing code.


> MS also agree that the primitive __m128 is the right approach. I'm not basing my
> opinion on their judgement at all, I independently conclude it is the right
> approach, but it's encouraging that they agree... and perhaps they're a more
> respectable authority than me and my opinion :)

Can you show me a typical example of how it looks in action in source code?

> What I proposed in the OP is the simplest, most non-destructive initial
> implementation in the language. I think there is the lest opportunity for making
> a mistake/wrong decision in my initial proposal, and it can be extended with
> what you're suggesting in time after we have the opportunity to prove that it's
> correct. We can test and prove the rest with libraries before committing to
> implement it in the language...

I don't think the typeless approach will wind up being any easier, and it'll 
certainly suck when it comes to optimization, error messages, symbolic debugger 
support, etc.


More information about the Digitalmars-d mailing list