Bug#694625: libblas3gf: DGEMV does not handle properly N=0

Sébastien Villemot sebastien at debian.org
Wed Nov 28 14:47:08 UTC 2012


Christophe TROESTLER <Christophe.Troestler at umons.ac.be> writes:

> Package: libblas3gf
> Version: 1.2.20110419-5
> Severity: important

> The routine DGEMV (with TRANS = 'N') is supposed to perform the
> operation
>
>     y ← beta * y + alpha * A * x
>
> where the matrix A has dimensions M×N.  In particular, if N=0 (and M >
> 0), A * x is the null vector (all elements are given by sums on an
> empty set of indices).  Consequently, if N = 0, the operation should
> be
>
>     y ← beta * y
>
> and NOT leave y untouched.  For your convenience, I have attached a
> program demonstrating the latter (wrong) behavior.

I have tested the three BLAS implementations available in Debian (netlib
BLAS, ATLAS and OpenBLAS), and they all give the same result (bad from
your point of view).

So I am not sure this is a bug. Maybe this is on purpose. If one
considers this operation to be invalid (as I do), then it makes sense to
do nothing.

Does the documentation clearly states that BLAS supports operations on
objects with one dimension equal to zero?

-- 
 .''`.    Sébastien Villemot
: :' :    Debian Developer
`. `'     http://www.dynare.org/sebastien
  `-      GPG Key: 4096R/381A7594
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 835 bytes
Desc: not available
URL: <http://lists.alioth.debian.org/pipermail/debian-science-maintainers/attachments/20121128/e8585270/attachment.pgp>


More information about the debian-science-maintainers mailing list