Re: [eigen] eigen sqrt compilation error |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/eigen Archives
]
- To: eigen@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [eigen] eigen sqrt compilation error
- From: Benoit Jacob <jacob.benoit.1@xxxxxxxxx>
- Date: Fri, 19 Jun 2009 14:50:14 +0200
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:in-reply-to:references :date:message-id:subject:from:to:content-type :content-transfer-encoding; bh=UPnQqwk8j+VyhskrowHefis1HB5CCF0HJph1axY0Op8=; b=TZn0Hy8vKapvriziilsykWijA8qBsKThQVeOzrb064CgLbuXWLWCfx02SyVMD6ALjs /wDvbV96Vam3UF0tpDjt9/LK1IEGtZj6HQPx5o3DFRgN+A1vMSPnmFHYpoXPi6XEglIR NzsNde8WRUSj/B3gprsJuo/2wAv7z8gWh3FH4=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :content-type:content-transfer-encoding; b=jVrssYUDY0QopGf6oWJGCA2FoUv2+jwS9dOBEFUSzrhoSTmMBjt8ibmRxp32u6G63U HC8R4FDvxAc65x453MgsGj9cDQm2pUtY06s8/GK+qgGE/KcVsgP1W7j/mHqyRVr82nV4 4oby6cbF/zxYgLanAVbsx3mYKNOjkaL+6g11U=
2009/6/19 Gael Guennebaud <gael.guennebaud@xxxxxxxxx>
>
> On Fri, Jun 19, 2009 at 12:29 PM, Patrick Mihelich
> <patrick.mihelich@xxxxxxxxx> wrote:
> >
> > On Fri, Jun 19, 2009 at 12:37 AM, Moritz Lenz <mlenz@xxxxxxxxxxxxxxxxxxxxxxx> wrote:
> >>
> >> Considering the number of times people make this error (forgetting to include it), what about including it by default? Is there a very good reason not to do it?
> >
> > I wonder this too. I ran into this error when I started using Eigen, and it seems to pop up regularly on the list. What exactly is the cost of including <Eigen/Array> in the core? How much does it increase compile times?
>
> on my high end computer with gcc 4.3.2 -O2 -DNDEBUG, much less time
> than to compile: Vector3f a, b; cout << a+b;, so something around 0.02
> sec.
On my computer I tried this program:
#include <Eigen/Core>
//#include <Eigen/Array>
using namespace Eigen;
int main() {
Matrix3d m = Matrix3d::Identity();
Matrix3d n = m+m;
Vector3d v; v << 1, 2, 3;
Vector3d w = v+v;
w = m * w;
std::cout << w << std::endl;
}
with g++ 4.3.3. I repeated the compilation 10 times.
The #include<Eigen/Array> increases compilation times by 2.5% and the
memory usage is not affected.
I'm OK to consider this reasonable, especially as other modules like
Geometry already include Array.
What's your opinion?
The next question would be: should we merge the Array/ files into
Core/ or just #include<Array> in Core.
Benoit