Blazemark build error with BLAS="no"

Issue #295 wontfix
Mikhail Katliar created an issue

Build commands:

./configure
make

Output:

...
  Building sparse matrix transpose (smattrans) binary...
  Building dense matrix inversion (dmatinv) binary...
/usr/bin/ld: /home/kotlyar/software/blaze/blazemark/obj/BLAZE_DMatInv.o: in function `blazemark::blaze::dmatinv(unsigned long, unsigned long)':
DMatInv.cpp:(.text+0x16a1): undefined reference to `dgetrf_'
/usr/bin/ld: DMatInv.cpp:(.text+0x1776): undefined reference to `dgetri_'
/usr/bin/ld: DMatInv.cpp:(.text+0x18b8): undefined reference to `dgetrf_'
/usr/bin/ld: DMatInv.cpp:(.text+0x1971): undefined reference to `dgetri_'
/usr/bin/ld: /home/kotlyar/software/blaze/blazemark/obj/MAIN_DMatInv.o: in function `estimateSteps(blazemark::DynamicDenseRun&)':
DMatInv.cpp:(.text+0x1eed): undefined reference to `dgetrf_'
/usr/bin/ld: DMatInv.cpp:(.text+0x1fb3): undefined reference to `dgetri_'
/usr/bin/ld: DMatInv.cpp:(.text+0x2588): undefined reference to `dgetrf_'
/usr/bin/ld: DMatInv.cpp:(.text+0x2639): undefined reference to `dgetri_'
collect2: error: ld returned 1 exit status
make: *** [Makefile:173: binaries] Error 1

Comments (1)

  1. Klaus Iglberger

    Hi Mikhail!

    Thanks for creating this issue. The BLAS option in the Blazemark Configfile is related to the BLAS specific benchmarks. By setting BLAS to no you only disable the compilation of these BLAS benchmarks, but you don't disable the BLAS and/or LAPACK related kernels of the Blaze library. In order to disable BLAS in the Blaze library you will have to define the BLAZE_BLAS_MODE symbol (see the wiki). However, even then the matrix inversion kernel depends on LAPACK, which means the compilation of this kernel will fail (as the wiki explains, the matrix inversion will always depend on LAPACK). Since the Blazemark has been deprecated since the release of Blaze 3.5, we don't plan to adapt to this dependency. Hopefully you can built around this by only building the benchmarks you are interested in instead of building the complete set benchmarks. Thanks again,

    Best regards,

    Klaus!

  2. Log in to comment