[ Thread Index |
| More lists.tuxfamily.org/eigen Archives
- To: eigen@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [eigen] BLAS backend
- From: Benoit Jacob <jacob.benoit.1@xxxxxxxxx>
- Date: Thu, 15 Oct 2009 11:17:59 -0400
- 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=EbQXDIljTRM/pZyJMpARruJdaQ/laPGK2ThXFW7sS9A=; b=x7KJeH5Q8A7P02CXhm8oh9G7qRLjMKMkczGJzbjhLJd/zODc8dhWMbbi/J3ssn2N1b fIroc/eLjTOW6Lqjb87WCmvAsAcKr3gPiCs5LnkHiPay8wONzKBmVAa+oy6GgvzhgLPn jRNrr5pRizNFP5etxnn+S5/rUTWlQOE5s6zyM=
- 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=p4x/PoiB4IAz4m2Bn5TYiIkgcdf8Br/kzR1k/OuA+YSWTrpMcpdBRaSccGoY3ZjyaE MxR8/kWHR1EWpkq9ddz+vZq8ibJAoOnqLB2Bv7hkpp9sBC3FIUcG5td1doR6luIlMhOE JPaj675IxAvwsfZFrLcuBnEM4lDjA6b2CqnRM=
2009/10/15 Gael Guennebaud <gael.guennebaud@xxxxxxxxx>:
> Also note how the matrix copies between the CPU and GPU are extremely
> costly... So, now if we agree that a BLAS backend is only worth it to get
> GPU support
There are other use cases:
- parallelized on several cpus/cores
- lapack backend can be interesting even on 1 cpu core.
> we can think about a smarter approach allowing to keep the data
> on the GPU as much as possible, and this in a transparent manner for the
Great, if it's transparent to the user, I guess it can be enabled only
when appropriate (or in the worst case by asking the user to define a
preprocessor symbol). Sounds nice!
> I have a couple of idea about that (and other related stuff) that I'm
> going to present next week during an internal GPU workshop to people of my
> research center. My hope is that people working on parallel computing will
> be interested to build a small collaboration around that. We'll see.
> On Thu, Oct 15, 2009 at 3:22 PM, Benoit Jacob <jacob.benoit.1@xxxxxxxxx>
>> This is very interesting and is in our TODO,
>> But work on this hasn't started yet. It shouldn't be hard. For
>> example, if you want to use BLAS GEMM,
>> you could just plug that in the file
>> Eigen/src/Core/products/GeneralMatrixMatrix.h, in the function
>> GeneralProduct<Lhs, Rhs, GemmProduct>::scaleAndAddTo(), at line 144 in
>> the development branch. Note the little cooking there to get the
>> "actual" lhs, rhs, alpha.
>> 2009/10/15 Jean Sreng <jean.sreng@xxxxxx>:
>> > Hello, we are currently investigating the use of Eigen2 in our software
>> > (VR simulations) and we were wondering about BLAS (and LAPACK) backends.
>> > Does the newer (development) version of Eigen provide such backend ?
>> > Otherwise, how difficult would it be to implement such backend
>> > (partially in a first step, for instance to use BLAS GEMM or
>> > tridiagonalisation ?) ? Do you have any thoughts about using this
>> > backend with GPU-optimized versions of BLAS (CUBLAS ?) ?
>> > Thanks !
>> > --
>> > Jean