|Re: [eigen] merged the eigen-strides fork|
[ Thread Index |
| More lists.tuxfamily.org/eigen Archives
- To: eigen@xxxxxxxxxxxxxxxxxxx
- Subject: Re: [eigen] merged the eigen-strides fork
- From: Rhys Ulerich <rhys.ulerich@xxxxxxxxx>
- Date: Sat, 27 Feb 2010 18:08:48 -0600
- 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 :from:date:message-id:subject:to:content-type; bh=tk3kZndtYIM7Pr0Rb1gFKYSRQVpA5bJGgmPj4vS9R84=; b=iOSOMrBeyMmvJRl0gCg5VqvcF1LVW5R/ebsU501pdr1LPmorOBA1dIEEmYzYK+L2Qk 8t/1CrP5A/zBOmA5JTA2vLAsEVtrrGbWQ/KCVpBGiPwHqy3nZ/gnF+TuRd9NWz0Izdku 05tIczeQKPStZp6xKrPHoOiNhv2Ro0LjeDRk0=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type; b=Y1HfQYonhEpAr3qBPdLPVPkTyGOJgk6lqpOCtij2a+NV6ND/I0w2+52fwn458xxZV2 vCbpGmxnE65meRA4bTpKOH1/Yg5EBQO6crJFJ5GAkbh/jVQwBMHtuq51LU+c9nUqSSEx g2yk6n0369zHFO41aaDvXd9Thpa5huFgmaAcE=
>>> Map can now map non-contiguous arrays with inner and/or outer stride.
>> It'll handle two-strided matrices, sometimes called general storage?
> It handles the case where you have simultaneously an inner stride
> ("increment") and an outer stride ("leading dimension").
That's great! Thank you for putting in the extra effort.
> There's been discussion as to how useful this was, since LAPACK
> doesn't seem to do that...
I wish LAPACK would support general storage, especially for the
"matrices" that appear on the RHS of multiple AX=B solves. When X and
B are complex but A is real-valued, using general storage for X and B
allows solving the system in place with one factorization and two real
solves. Without general storage, doubling A's dimension to make it
"complex" or reordering the real and imaginary components in X and B
before and after solving is required.
> ... can you mention other libraries offering this kind of "general storage" ?
Offhand, I know of none. I've been hoping to find something with both
general storage and banded matrix support-- at least the
GBMV/GBTRF/GBTRS subset to support the use case above which arises in
mixed B-spline/Fourier representation.
Mixed real/complex use cases are awkward with many (all?) tools. I'd
much appreciate pointers to good mixed real/complex approaches if
someone knows of relevant papers or software packages.