0

当我在 CLAPACK 中测试 CBLAS 时出现错误。当我运行测试代码时

./xblat2d < dblat2.in

我得到错误输出:

“TransA 必须为 111、112 或 113,但设置为 -1 例程 cblas_dgemv 的参数 2 不正确”

有谁知道这表明什么样的问题?

细节

我试图不使用参考 CBLAS,而是使用 ATLAS CBLAS。所以,我编译了包装库libcblaswr.a并将 make.inc 中的行更改为

BLASLIB     = ../../libcblaswr.a -L/usr/local/atlas/lib -lcblas -L/usr/local/atlas/lib -latlas

CLAPACK安装提示做

BLASLIB     = ../../libcblaswr.a -lcblas -latlas

但是链接器在没有我使用 -L 选项的情况下找不到 cblas 和 atlas,所以我将其包含在内。

我的设置的详细信息:

  • Ubunty Lycid Lynx 10.04
  • CLAPACK-3.2.1
  • ATLAS.3.9.51
4

1 回答 1

0

这似乎是 CLAPACK 测试的一个问题,因为它将错误的参数传递给 BLAS 例程。在调用 dgemv 时,可以选择矩阵作​​为自身或转置或共轭转置运行,对应于 111、112 或 113(参见 cblas.h 的第 6 行)。CLAPACK 中的代码没有正确设置参数。我还没有深入了解这是否只是测试的问题,或者问题是否更深入;但我怀疑这只是测试,因为我没有使用任何 CLAPACK 代码遇到这个问题。

我忽略了它,因为 1)我不依赖 CLAPACK 来测试 ATLAS 安装的 BLAS 例程,2)如果有更深层次的问题,它会导致这样的错误而不是产生无效的结果,我会追踪它然后。

是的,链接器不会找到 -lcblas 和 -latlas ,直到您将它们安装在通常搜索的位置,这是正常的。

于 2012-07-02T12:09:16.057 回答