SIMD benchmark

Iain Buclaw ibuclaw at ubuntu.com
Mon Jan 16 12:56:24 PST 2012


On 16 January 2012 19:25, Walter Bright <newshound2 at digitalmars.com> wrote:
> On 1/16/2012 11:16 AM, Iain Buclaw wrote:
>>>
>>> But don't worry, I'm not planning on working on that at the moment :-)
>>
>> Leave that sort of optimisation for the backend to handle please. ;-)
>
>
> Of course.
>
> I suspect Intel's compiler does that one, does gcc?
>

There's auto-vectorisation for for(), foreach(), and foreach_reverse()
loops that I have written support for.  I am not aware of GCC
vectorising anything else.

example:

int a[256], b[256], c[256];
void foo () {
  for (int i=0; i<256; i++)
    a[i] = b[i] + c[i];
}

-- 
Iain Buclaw

*(p < e ? p++ : p) = (c & 0x0f) + '0';


More information about the Digitalmars-d mailing list