A few notes on choosing between Go and D for a quick project

Walter Bright via Digitalmars-d digitalmars-d at puremagic.com
Sat Mar 21 20:43:27 PDT 2015


On 3/21/2015 2:08 PM, "Ola Fosheim =?UTF-8?B?R3LDuHN0YWQi?= 
<ola.fosheim.grostad+dlang at gmail.com>" wrote:
> On Saturday, 21 March 2015 at 19:35:02 UTC, Walter Bright wrote:
>> I know I shouldn't, but I'll bite. Show me the "low level C code" that
>> effectively uses SIMD vector registers.
>
> You are right, you should not bite. C code is superflous, this is a general
> issue with efficient parallel computations. You want to avoid dependencies
> within a single register.
>
> E.g. Take a recurrence relation and make an efficient simd implementation for
> it.  You might need to try to expand the terms so you have N independent
> formulas. If it uses floating point you will have to be careful about drift
> between the N formulas that are computed in parallel.
>

I.e. there isn't low level C code that effectively uses SIMD vector registers. 
You have to use the auto-vectorizer, which tries to reconstruct high level 
operations out of C low level code, then recompile.


More information about the Digitalmars-d mailing list