Boost logo

Boost :

Subject: Re: [boost] Going forward with Boost.SIMD
From: Evgeny Panasyuk (evgeny.panasyuk_at_[hidden])
Date: 2013-04-21 09:01:12

20.04.2013 3:37, Mathias Gaunard:

>> For instance, there is FMA instruction "d=a+b*c" - yes, your proposal
>> have appropriate fma function in <cmath>.
>> But imagine that some new architecture would have "double FMA"
>> instruction like: "f=a+b*c+d*e", or even more complex instruction: "2x2
>> matrix multiplication".
> It is relatively easy for compilers to transform a*b+c to fma(a,b,c)
> (even if the operations involved are SIMD intrinsics). As a matter of
> fact, compilers already do it.

And what is your point? Do you mean that we should rely on auto-vectorizer?

Quote from proposal:
"Autovectorizers have the ability to detect code fragments that can be
vectorized. This automatic process nds its limits when the user code is
not presenting a clear vectorizable pattern (i.e. complex data
dependencies, non-contiguous memory accesses, aliasing or control ows).
The SIMD code generation stays fragile and the resulting instruction
ow may be suboptimal compared to an explicit vectorization."

Evgeny Panasyuk

Boost list run by bdawes at, gregod at, cpdaniel at, john at