easybuild-easyblocks icon indicating copy to clipboard operation
easybuild-easyblocks copied to clipboard

Should set `BLA_VENDOR` in CMakeMake easyblock if BLAS is in the toolchain

Open ocaisa opened this issue 4 years ago • 5 comments
trafficstars

The logic for this is already used in https://github.com/easybuilders/easybuild-easyblocks/blob/develop/easybuild/easyblocks/s/superlu.py#L66

This logic is outdated though and should be updated to include FlexiBLAS and OpenBLAS (if the CMake version is recent enough)

ocaisa avatar May 12 '21 09:05 ocaisa

See https://cmake.org/cmake/help/latest/module/FindBLAS.html .

Looks like it's not that trivial for imkl...

boegel avatar May 24 '21 18:05 boegel

I think in the case of MKL we could accept that we can't do it, but in the other cases we should set it to force picking up the right library

ocaisa avatar May 25 '21 07:05 ocaisa

Actually one way to address would be to use Intel10_64_dyn and let MKL decide what to do at runtime. This would probably mean changes in how we link to MKL though (which is already being used at JSC I think).

ocaisa avatar May 25 '21 08:05 ocaisa

this would also help in less clean systems where the wrong BLAS/LAPACK are picked up, was just bitten by that, this helped:

if get_software_root("flexiblas"):
    self.cfg.update('configopts', '-DBLA_VENDOR=FlexiBLAS')

seems innocuous enough?

migueldiascosta avatar Dec 12 '22 07:12 migueldiascosta

@migueldiascosta It would make sense, but we should definitely broadly test a change like that.

boegel avatar Dec 12 '22 09:12 boegel