Re: [eigen] BLAS backend |

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

*To*: eigen@xxxxxxxxxxxxxxxxxxx*Subject*: Re: [eigen] BLAS backend*From*: Aron Ahmadia <aja2111@xxxxxxxxxxxx>*Date*: Fri, 16 Oct 2009 13:32:12 +0300*Cc*: Daniel Lecocq <sowiebinich@xxxxxxxxx>, aron.ahmadia@xxxxxxxxxxxx*Dkim-signature*: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:sender:received:in-reply-to :references:date:x-google-sender-auth:message-id:subject:from:to:cc :content-type:content-transfer-encoding; bh=MNzu3+Q1DSvx0QmaMOIHgV5HqIdhBFFL+hQEhipqjYQ=; b=ZoCVvQxyA9QBYdiNKZZEwIuxetUr43OZEoYwVmABS6A+vYvPkVvltMy9DuP9NxMuXJ L322PeKVcFeJn52AZtCTRUOH/KBtk9JJk/7iCUlBuvKt9dVwj5guBIkokP3Mo64a8fuz +HpFN2JbmjTtYU3hM3ZJNqUYHzxy34N7Dxq6o=*Domainkey-signature*: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; b=m8/YkGzg8taf/r8imtvzebpwh9kuNQ/2Iz+coQ/3R4lhdDdxHUPCzKAG5acDJXG1sP lCb/AQT145T3vXNGh7MxZJSYoblc7Rubun1ci1Zgs5x+n83KFdpVJ+kn/H5p5QnKCc8X lXB3kojNm9MbRFvbtcVMSI6WwSxCFvxN0R7ss=

Hi Christian, Almost anything you can do using MPI on a shared memory machine you can do with OpenMP with added flexibility. MPI is a message passing paradigm and isn't suited for the sort of multicore optimization we're looking at this semester. An MPI-enabled Eigen is an interesting idea, and I agree with your thoughts on high-level optimization and distribution of parallel tasks. A On Fri, Oct 16, 2009 at 12:08 PM, Christian Mayer <mail@xxxxxxxxxxxxxxxxx> wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA256 > > Hi all, > > @Jean Sreng: I don't know what your VR simulation is doing in detail. > But for the normal 3D stuff you should be using small (3x3 or 4x4) fixed > size matrices; those are perfectly supported by Eigen2 and using any > BLAS implementation will only give you worse performance. > If you are using big, variable sized matrices (e.g. to solve liear > equation systems) the question for a BLAS backend is valid although it's > worth a try to use the native implementation of Eigen2. > > As Eigen2 is using expression templates even a GPU based backend might > profit by eigen as it can optimize the calculations to minimize the data > transfers between CPU and GPU do to late evaluation of the equation. > > Aron Ahmadia schrieb: >> It actually turns out that one of my students this semester is >> considering how to parallelize Eigen using OpenMP for multithreading, > > I'm not too fond of OpenMP for parallelisation in our case. It's very > good to parallelisate an loop (i.e. e.g. to multithread a single matrix > multiplication) but to take advantage of the expression templates it > might be not powerfull enough. MPI might be an better option there. > > Parallelisation at the algorithm level (= expression template level) > gives you the advantage to perform operations that have no dependancy at > each other. For example: > > result = A*B + C*D (A,B,C,D are big matrices) > > It's much better to have - one a two core CPU - one thread that's > calculation A*B and another doing C*D than both threads fighting each > other (= locks) doing A*B and then doing an C*D... > > In the end you need multhithreaded elementary operations (like GEMM) > *and* high level parallelisation of the algorithm. And an optimizer > that's deciding the best multithreading strategy for each algorithm. An > very interesting and highly complex task. > > CU, > Christian > > > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.9 (GNU/Linux) > > iEYEAREIAAYFAkrYOB8ACgkQoWM1JLkHou0V4QCfWwXmXbyIcD5AKwWhfv/xFNW+ > CjoAnie0Hd3qhEK38rQdVyw1GjQkPKVU > =HFo3 > -----END PGP SIGNATURE----- > > >

**References**:**[eigen] BLAS backend***From:*Jean Sreng

**Re: [eigen] BLAS backend***From:*Benoit Jacob

**Re: [eigen] BLAS backend***From:*Gael Guennebaud

**Re: [eigen] BLAS backend***From:*Benoit Jacob

**Re: [eigen] BLAS backend***From:*Gael Guennebaud

**Re: [eigen] BLAS backend***From:*Benoit Jacob

**Re: [eigen] BLAS backend***From:*Aron Ahmadia

**Re: [eigen] BLAS backend***From:*Christian Mayer

**Messages sorted by:**[ date | thread ]- Prev by Date:
**Re: [eigen] BLAS backend** - Next by Date:
**Re: [eigen] BLAS backend** - Previous by thread:
**Re: [eigen] BLAS backend** - Next by thread:
**Re: [eigen] BLAS backend**

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