FindBLAS¶
Find Basic Linear Algebra Subprograms (BLAS) library
This module finds an installed Fortran library that implements the BLAS linear-algebra interface (see http://www.netlib.org/blas/).
The approach follows that taken for the autoconf macro file,
acx_blas.m4 (distributed at
http://ac-archive.sourceforge.net/ac-archive/acx_blas.html).
Input Variables¶
The following variables may be set to influence this module’s behavior:
- BLA_STATIC
- if - ONuse static linkage
- BLA_VENDOR
- If set, checks only the specified vendor, if not set checks all the possibilities. List of vendors valid in this module: - Goto
- OpenBLAS
- FLAME
- ATLAS PhiPACK
- CXML
- DXML
- SunPerf
- SCSL
- SGIMATH
- IBMESSL
- Intel10_32(intel mkl v10 32 bit)
- Intel10_64lp(intel mkl v10+ 64 bit, threaded code, lp64 model)
- Intel10_64lp_seq(intel mkl v10+ 64 bit, sequential code, lp64 model)
- Intel10_64ilp(intel mkl v10+ 64 bit, threaded code, ilp64 model)
- Intel10_64ilp_seq(intel mkl v10+ 64 bit, sequential code, ilp64 model)
- Intel10_64_dyn(intel mkl v10+ 64 bit, single dynamic library)
- Intel(obsolete versions of mkl 32 and 64 bit)
- ACML
- ACML_MP
- ACML_GPU
- Apple
- NAS
- Arm
- Arm_mp
- Arm_ilp64
- Arm_ilp64_mp
- Generic
 
- BLA_F95
- if - ONtries to find the BLAS95 interfaces
- BLA_PREFER_PKGCONFIG
- if set - pkg-configwill be used to search for a BLAS library first and if one is found that is preferred
Imported targets¶
This module defines the following IMPORTED target:
- BLAS::BLAS
- The libraries to use for BLAS, if found. 
Result Variables¶
This module defines the following variables:
- BLAS_FOUND
- library implementing the BLAS interface is found 
- BLAS_LINKER_FLAGS
- uncached list of required linker flags (excluding - -land- -L).
- BLAS_LIBRARIES
- uncached list of libraries (using full path name) to link against to use BLAS (may be empty if compiler implicitly links BLAS) 
- BLAS95_LIBRARIES
- uncached list of libraries (using full path name) to link against to use BLAS95 interface 
- BLAS95_FOUND
- library implementing the BLAS95 interface is found 
Note
C, CXX or Fortran must be enabled to detect a BLAS library. C or CXX must be enabled to use Intel Math Kernel Library (MKL).
For example, to use Intel MKL libraries and/or Intel compiler:
set(BLA_VENDOR Intel10_64lp)
find_package(BLAS)
Hints¶
Set the MKLROOT environment variable to a directory that contains an MKL
installation, or add the directory to the dynamic library loader environment
variable for your platform (LIB, DYLD_LIBRARY_PATH or
LD_LIBRARY_PATH).
