Re: [eigen] Architecture specific performance optimizations

[ Thread Index | Date Index | More lists.tuxfamily.org/eigen Archives ]


On 07.03.2014 19:54, Gael Guennebaud wrote:
I think as a first step, we should have some kind of survey on what
platforms Eigen currently is used, who requires to have top-performance (I
would assume this correlates with people having up-to-date hardware).

This should indeed correlate with recent hardware. What's more tricky
is that "up-to-date" hardware might behave quite differently depending
on the architecture. In particular I'm thinking about ARM.

I think for ARM the problem is mainly to find people running benchmarks (as you noted below). As long as nobody does, I don't think it is really critical to have top performance here.

At the moment, I think a bigger issue is that many x86 optimizations for up-to-date architectures will have a significant impact on older architectures. A prominent example is replacing unaligned load/stores with movup{s,d} instructions (instead of the mov{l,h}p{s,d}-hack).


Maybe a more important issue is to find people willing to run performance
tests on a regular basis (especially for both out-dated and cutting-edge
hardware).

and more importantly for ARM/NEON for which, IFAIK, none of us can
easily run benchmarks or tests. Any volunteers?


In a similar vein, I'm not sure we'll be able to maintain AltiVec for
3.3. Actually, AFAIK, AltiVec has not been tested for a while and I'm
not even sure it still work with 3.2...

If we don't find anybody willing to run tests for AltiVec, should we mark it as "deprecated/untested" until somebody volunteers? I would not remove it, but just make clear to possible users that the code might not have the same quality as other architectures.


Christoph



--
----------------------------------------------
Dipl.-Inf., Dipl.-Math. Christoph Hertzberg
Cartesium 0.049
Universität Bremen
Enrique-Schmidt-Straße 5
28359 Bremen

Tel: +49 (421) 218-64252
----------------------------------------------



Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/