|Re: [eigen] about JacobiSVD's options|
[ Thread Index |
| More lists.tuxfamily.org/eigen Archives
- To: eigen@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [eigen] about JacobiSVD's options
- From: Gael Guennebaud <gael.guennebaud@xxxxxxxxx>
- Date: Wed, 16 Sep 2009 14:50:33 +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; bh=OE19luxTilgmHOJAfop1o6DxnK4cJpEjEJXapAlVxGk=; b=kt+epo8U824ib24fQ1oSpilfZYPeZX8b88Z65MdPdUc/8EZ5IYBvclkX4HeAiIzIHO apH5yAzKBMIzlYYpEnDBV5qFnpZgzEvO/LWnlse/tbRlvAPgX7JCsagrycCtMlB2lzAp i3bOcw/T+JzkMMkc6oLmEiq4ct3MwJLyHDE5U=
- 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; b=BRQLUGKRfOn8NCYCthBbXS6PqI4Igb4A/qb8Mo/h8qEX+2Aep39bw93g5sdwqgXVWn McIY31Bai28Hm1+UCMHUF1IAul7LG4/vPYJy5R7uTHytqKBggd1Jt+nmEw5aagJAXQHN MJbsJxNhA8fF6QnHdf9dl7GROSd69NSTuLMGs=
ok ok, but I still think it is a bit unfortunate to clutter the API
for compilation time only.
Actually, note that if the advanced user really want to speed up his
compilation time, the best is to explicitly instantiate the few
operations he need in a separate file (e.g., JacobiSVD<MatrixXd>), and
then the compilation of JacobiSVD<MatrixXd> will take 0sec. I agree
this is a little more work than just adding ",Square", but this
solution works for all classes and global functions and it brings much
more speed !
On Wed, Sep 16, 2009 at 2:11 PM, Benoit Jacob <jacob.benoit.1@xxxxxxxxx> wrote:
> ok, last email.
> The symbol tables look fine, really it seems that it's just that
> Householder QR is inherently more complicated code than square jacobi
> After all, the latter is just a 2x2 kernel and the code to apply
> Jacobi rotations, that's about it.
> This would confirm my theory that it's important to give the user an
> option to specify "square" at compile time :)
> 2009/9/16 Benoit Jacob <jacob.benoit.1@xxxxxxxxx>:
>> 2009/9/16 Benoit Jacob <jacob.benoit.1@xxxxxxxxx>:
>>> See attached files, if you can make sense of that... i'm puzzled.
>>> The matrix-vector product symbol itself takes 4 kilobytes, so it's not
>>> explaining all the difference.
>> Wow, i just found out about nm --demangle...
>> === 23:53:05 ~$ nm --print-size --size-sort --demangle a | grep Eigen
>> | tee symbols_a | wc -l
>> === 23:53:27 ~$ nm --print-size --size-sort --demangle a_square | grep
>> Eigen | tee symbols_a_square | wc -l
>> see new attached files !