[eigen] Array as the Scalar type

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


Mostly a question to Gael:

We wanted to enable support for Array as the scalar type, i.e.
Matrix<ArrayType, ...>.

But all our design is based on the assumption that it's OK to return
Scalars by value. E.g. the coeff() const methods in rvalue expressions
all return a Scalar by value.

So? Are we saying that using Array as Scalar type only is efficient
when the Array is small enough to fit entirely in registers? Should we
then discourage using large Array types as Scalar ? Note that would be
a bit disappointing as it would be the end of our "horizontal
vectorization" dreams.

Or do you want us to refactor Eigen so that we support expression
templates for the Scalar type?

In my rework of MathFunctions.h i have made sure to allow supporting
expression templates for the Scalar type, and have implemented that
for Array expressions, but if it's the only part of Eigen that does
that, it makes no sense! Should I drop xpr template Scalar support,
which would simplify MathFunctions.h quite a bit (e.g. no need for
SFINAE anymore).


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