Re: [eigen] Comparing notes on work by Igleberger et al. 2012 |

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

*To*: eigen@xxxxxxxxxxxxxxxxxxx*Subject*: Re: [eigen] Comparing notes on work by Igleberger et al. 2012*From*: Gael Guennebaud <gael.guennebaud@xxxxxxxxx>*Date*: Tue, 28 Aug 2012 16:39:57 +0200*Dkim-signature*: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type; bh=5deUTflfzkLhelvTmNRm+PbxbbAR8QsQWNQ3K0KUZVo=; b=vM2JZaal0GP9avXpw1snL3Zz/gYIriTzyr9M6YHJxGXtZpJs8klf0mz2m+Uehkufxl WNAz1+ihH0zWxi/Tt4xF/UwaGq4wGkQuCBqmMtYkCZndGh7EAkk5ISKCL1CYfkekbHHh l1gYccqd7jcHpkKdbIqsUBIJebKkLiC3L7NjfeoognUuGUFGDEEO8ajeBMOhoGkA7hrU xcjReTZo5AdCoQBl3qDkKoMcV2MoQg+yFyTJhODZ6dgEmQvOqQQoeVWtACf6CZtWnGeG H52PFZSKsl+rKdP5uDgkg6Yj5ixj7L32ioBH/AQErxtmu7/N4mEpLO10oVARbpDlbm4/ QTxQ==

On Tue, Aug 28, 2012 at 4:24 PM, Rhys Ulerich <rhys.ulerich@xxxxxxxxx> wrote: > Hi all, > > I noticed Blaze on the NA Digest list [1] on the NA Digest list, read I noticed it too. > the associated paper [2], and wondered if I could compare my takeaway > knowledge with anyone else familiar with both Blaze and Eigen: > > 1) At the time of writing, Blaze shows faster dgemm than Eigen3 > because they simply defer to the MKL. This is moot as Eigen 3.1 > allows use of the MKL as well. Partly. Blaze is also able to exploit AVX instruction (so a theoretical x2 compared to SSE), however Blaze suffers from a HUGE shortcoming: data are assumed to be perfectly aligned, including inside a matrix. For instance, a row-major matrix is padded with empty space such that each row is aligned. The extra space *must* be filled with zeros and nothing else because they are exploited during some computations... As a consequence, Blaze does not has any notion of sub-matrices or the like, cannot map external data, etc. One cannot even write a LU decomposition on top of Blaze. In other word, it is not usable at all. This is also unfair regarding the benchmarks because they are comparing Blaze with perfectly aligned matrices to Eigen or MKL with packed and unaligned matrices. > 2) Blaze shows faster performance on A*B*v for A and B matrices > because they don't honor order of operations and their expression > templates treat it as A*(B*v). This is moot as I can simply write > A*(B*v) in Eigen. Exactly, though we plane to do the same (and more) once the evaluators finalized. > 3) Blaze does show some convincingly better results for mixed > dense/sparse operations. Indeed, compressed sparse representations offers very little room for optimizing basic operations. gael. > > Thanks, > Rhys > > [1] http://www.netlib.org/na-digest-html/12/v12n35.html#1 > [2] http://dx.doi.org/10.1137/110830125 > >

**Follow-Ups**:**Re: [eigen] Comparing notes on work by Igleberger et al. 2012***From:*Gael Guennebaud

**Re: [eigen] Comparing notes on work by Igleberger et al. 2012***From:*Christoph Hertzberg

**References**:**[eigen] Comparing notes on work by Igleberger et al. 2012***From:*Rhys Ulerich

**Messages sorted by:**[ date | thread ]- Prev by Date:
**[eigen] Comparing notes on work by Igleberger et al. 2012** - Next by Date:
**Re: [eigen] Comparing notes on work by Igleberger et al. 2012** - Previous by thread:
**[eigen] Comparing notes on work by Igleberger et al. 2012** - Next by thread:
**Re: [eigen] Comparing notes on work by Igleberger et al. 2012**

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