[ Thread Index |
Date 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:44:43 -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 :content-transfer-encoding; bh=OgCTXmQPdKdqOzs5HWgcomjfCDg9J3aFd7qh6G2jjeQ=; b=E1arI+uqlRMPNmZcyIWMi1rBo1LKOlLIy7B9s3aPTEWBjKzenkVSF5rnu6W03Ye/p1 tMNzqG0Xp6hVSv8dUefijyhP89m3Tu4g5qfaM+mG2zL+7V2TbPgXrTXdlxI+3pzRMAAX U57G2u+giIJPMeRMJt56piSFdq8vncC+Vn0eY=
- 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=fJJGu5Htbh6N0Fzl8zOU5zpLOZQsHErBfXnisb7KHkGlZeHxVkpN3na/n9VN1QsGxI Sp/TcN1KkesFcThsHJJ7dt+ACfqVwXNd+pSJSRiqawXub1rV/k4R3SbnLs4SKLQYKrAA 2XepelNBkc6sDpKV8Jn8pKmi6VeHbdD8R1iKE=
2009/10/15 Gael Guennebaud <gael.guennebaud@xxxxxxxxx>:
>
>
> On Thu, Oct 15, 2009 at 5:17 PM, Benoit Jacob <jacob.benoit.1@xxxxxxxxx>
> wrote:
>>
>> 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
>
> well, I hope we'll have multithreading in Eigen soon... Actually, doing it
> the BLAS way is nearly trivial. The main reason why we still don't have
> multithreading is because we want to do something smarter providing more
> control to the user, blabla...
I can see how your blocked products are easy to parallelize, so indeed
it seems that there's a big difference again between BLAS and LAPACK
here...
---> BLAS : we can parallelize across CPUs , and for the question of
giving control to the user, let's check what other libraries do; in
the worst case we might have to introduce a tiny optional binary
library just for that feature, to host a few static variables...? Just
a quick idea.
---> LAPACK: we want backends there already in the single CPU case.
Benoit