Re: [BLAS bindings] help appreciated on using trmv and gbmv

Florent Teichteil <[email protected]>
Newsgroups gmane.comp.lib.boost.ublas
Message-ID <CAMW3hvNwmftGeHyNNqiryAB+LC6Rvxa-tasCrU+9rsLqKuDTXg@mail.gmail.com>
> Hello Florent,
>
> thanks for all the testing! I would like to try your test cases, hunt down
> potential bugs, and, if you agree, include the test cases in the testing
> part of the bindings. Could you please provide your code as an attachment?
>
> Thanks,
>
>
> Rutger
>

Hi Rutger,

Thanks for your interest. You'll find my tests in the attached file
test.cc as well as the output file testoutput.txt which I get when
running it. I'm using Ubuntu with ATLAS backend.

I would stress that there is in my opinion no other library like ublas
and its bindings around there, that handles so many matrix formats and
matrix storage options, and that we can bind to cblas compliant
libraries and others. It's really a great job. The problem is that I'm
using it in a large production code, so that I must say that I thought
to move to another library (eigen for instance), but in fact they
aren't much libraries like ublas that handle packed matrix formats
like triangular_matrix and banded_matrix. For my needs, I dream that I
could use proxies of triangular and banded (packed) matrices in
conjunction with the blas bindings, but it seems that it is not
possible for some technical reasons (I am not sure to understand why,
because netlib's blas or atlas also handle packed triangular and
banded matrices...).

OK, but for the moment, it would be wonderful if binding functions
like trmv and gbmv work properly with dense matrices and triangular
and banded adaptors. (Perhaps they work properly, but I'm misusing
them, see my attached test files).

Cheers
Florent

_______________________________________________
ublas mailing list
[email protected]
http://lists.boost.org/mailman/listinfo.cgi/ublas
Sent to: [email protected]
testoutput.txt (text/plain, 1.1 KB)
FIRST TEST CASE: triangular matrices with column major storage

gemv: CORRECT
trmv: CORRECT
trmv with packed triangular matrix: DOES NOT COMPILE

gemv with trans: WRONG
trmv with trans v1: WRONG
trmv with trans v2: WRONG
trmv with trans and packed triangular matrix: DOES NOT COMPILE


SECOND TEST CASE: triangular matrices with row major storage

gemv: WRONG
trmv: WRONG
trmv with packed triangular matrix: DOES NOT COMPILE

gemv with trans: CORRECT
trmv with trans v1: WRONG
trmv with trans v2: WRONG
trmv with trans and packed triangular matrix: DOES NOT COMPILE


THIRD TEST CASE: banded matrices with column major storage

gemv: CORRECT
gbmv: WRONG
gbmv with packed banded matrix: WRONG

gemv with trans: WRONG
gbmv with trans v1: WRONG
gbmv with trans v2: DOES NOT COMPILE
gbmv with trans and packed banded matrix: DOES NOT COMPILE


FOURTH TEST CASE: banded matrices with row major storage

gemv: WRONG
gbmv: WRONG
gbmv with packed banded matrix: WRONG

gemv with trans: CORRECT
gbmv with trans v1: WRONG
gbmv with trans v2: DOES NOT COMPILE
gbmv with trans and packed banded matrix: DOES NOT COMPILE
test.cc (application/octet-stream, 5.1 KB) - not displayed
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.