blas
This test is adapted from the BLAS test included in the BLIS v1.1 sources at https://github.com/flame/blis/tree/1.1/test/3
Customizations to the original BLAS test: - adapted and simplified Makefile for FlexiBLAS support - custom simplified run.sh script
Notes:
- a buildenv module, which includes FlexiBLAS, and BLIS module must be loaded to run the test,
even if BLIS or OpenBLAS are not used. the buildenv module is automatically added by eessi_mixin
by setting "require_buildenv_module = True"
- by default OpenBLAS is already included as a dependency of FlexiBLAS.
this means that, if multiple OpenBLAS modules are present in the same toolchain,
the OpenBLAS versions not included in FlexiBLAS may fail to load due to a version conflict.
to fix this, you may want to run: export LMOD_DISABLE_SAME_NAME_AUTOSWAP=no before running the test.
- BLAS modules with hyphens in the version string are not supported.
Supported tags in this ReFrame test (in addition to the common tags):
- BLAS implementation: openblas, blis, aocl-blas, imkl
- CI tag: runs only openblas
EESSI_BLAS_AOCLBLAS_mt
¶
EESSI_BLAS_BLIS_mt
¶
EESSI_BLAS_OpenBLAS_mt
¶
EESSI_BLAS_base
¶
EESSI_BLAS_imkl_mt
¶
get_blas_modules(blas_name)
¶
Find available blas_name modules and (latest) matching BLIS module
Returns: a list of lists: each inner list has the blas_name module as first item, and the matching BLIS module as second item. The BLIS module must be second to avoid segmentation fault for AOCL-BLAS
get_imkl_modules()
¶
Find available imkl modules and (latest) BLIS module Only imkl modules with SYSTEM toolchain are used
Returns: a list of lists: each inner list has the imkl module as first item, and the latest BLIS module as second item.
multi_thread_scales()
¶
Scales for multi-threaded BLAS tests