Re: [eigen] FLENS C++ expression template Library has excellent documentation |
[ Thread Index |
Date Index
| More lists.tuxfamily.org/eigen Archives
]
- To: eigen@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [eigen] FLENS C++ expression template Library has excellent documentation
- From: Gael Guennebaud <gael.guennebaud@xxxxxxxxx>
- Date: Sat, 18 Apr 2009 08:45:40 +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=DEr6oGbxJu2jiNzoQAQj2JKyIC1Rjw0d0/EGmVHl3F8=; b=ewdOidSahyyaxEeXJFpdqKnsMMYbCQBBuHgbLQ3fMwK+vlHOU1X+otMJbnUgYR0kc+ iB69qXZEhuid4ZejQoYlj3a2TY0YnaDri15KRKP5/gFr+cFgbchcTOpxxAoxucagUN3Q uBunzsLfZbSj/g/1AXNdrIK1NmCWjDddnA7wQ=
- 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=J21lrRP3RqvzDI7LdJKa6ovNwERnVvvXDXbA2ikPZyDCUZ3iw4vxbin/8jQ96CvVvM /xJeGmG9iOrnSh/YWyZMfdlt6MBFIO0cIW1taNIZuMjGFzFuGu01p2+S6P/6HUlvaoHz x4rvI95kfNK5Z3bkg/iZY+ZANk0Q7u2+Fs710=
On Sat, Apr 18, 2009 at 7:40 AM, Rohit Garg <rpg.314@xxxxxxxxx> wrote:
> On Sat, Apr 18, 2009 at 10:53 AM, Benoit Jacob <jacob.benoit.1@xxxxxxxxx> wrote:
>> 2009/4/18 Rohit Garg <rpg.314@xxxxxxxxx>:
>>>> So, in which area does Intel MKL still have a long-term lead? I would
>>>> say parallelization. We haven't started that yet and it is probably a
>>>> very, very tough one. It's what I have in mind when I say that a
>>>> BLAS/LAPACK wrapper is still welcome.
>>>
>>> Why do you think parallelization is very difficult? Do you mean
>>> parallelization nfrastructure? AFAICS, using openmp will be cool. Let
>>> compiler handle all the dirty buisness etc This is something I want to
>>> explore (time availability is of course important !) so I would like
>>> some heads up.
>>
>> I'm very ignorant of these matters. If parallelization can be done in
>> a generic way, then yes I understand that it's just a matter of
>> OpenMP-ifying for loops. Although even so, there remain issues to
>> sort: what if the user application doesn't want Eigen to launch more
>> than N threads, because it is already launching a lot of threads of
>> its own? OpenMP 2 didnt seem to help much in that situation, maybe 3
>> is better.
>>
>
> I was thinking of something like -DEIGEN_PARALLEL 4 (ie opt in
> parallelization) at compile time to launch that many threads at
> compile time. BLAS 1 should be trivial to parallelize and BLAS2
> shouldn't be too difficult either.
unfortunately no, the problem is that we need to be able to control
that per expression, and we ave to come up with a good API for
that.Since eigen is a pure template library we cannot have global
states for that.
actually we have already experimented wit openMP, have a look at the
file disabled/EvalOMP.h
gael