Taking pipeline processing to the next level

Manu via Digitalmars-d digitalmars-d at puremagic.com
Tue Sep 6 17:18:59 PDT 2016


On 7 September 2016 at 01:54, Wyatt via Digitalmars-d
<digitalmars-d at puremagic.com> wrote:
> On Monday, 5 September 2016 at 05:08:53 UTC, Manu wrote:
>>
>>
>> A central premise of performance-oriented programming which I've
>> employed my entire career, is "where there is one, there is probably
>> many", and if you do something to one, you should do it to many.
>
>
> From a conceptual standpoint, this sounds like the sort of thing array
> languages like APL and J thrive on, so there's solid precedent for the
> concept.  I might suggest looking into optimising compilers in that space
> for inspiration and such; APEX, for example:
> http://www.snakeisland.com/apexup.htm

Thanks, that's really interesting, I'll check it out.


> Of course, this comes with the caveat that this is (still!) some relatively
> heavily-academic stuff.  And I'm not sure to what extent that can help
> mitigate the problem of relaxing type requirements such that you can e.g.
> efficiently ,/⍉ your 4 2⍴"LR" vector for SIMD on modern processors.

That's not what I want though.
I intend to hand-write that function (I was just giving examples of
how auto-vectorisation almost always fails), the question here is, how
to work that new array function into our pipelines transparently...



More information about the Digitalmars-d mailing list