Spec-Zone.ru › CMake 3.23

FindBLAS

Поиск библиотеки Basic Linear Algebra Subprograms (BLAS)

Этот модуль находит установленную библиотеку Fortran, реализующую интерфейс BLAS для линейной алгебры.

Должен быть включен хотя бы один из языков C, CXX, или Fortran.

Переменные ввода

Следующие переменные можно установить, чтобы повлиять на поведение этого модуля:

BLA_STATIC

если ON использовать статическую компоновку

BLA_VENDOR

Установите значение на один из поставщиков BLAS/LAPACK, чтобы искать BLAS только у указанного поставщика. Если не установлено, рассматриваются все поставщики.

BLA_F95

если ON пытается найти интерфейсы BLAS95

BLA_PREFER_PKGCONFIG

Новая версия 3.11.

если установлено, будет сначала использоваться поиск библиотеки BLAS, и если она найдена, то будет предпочтительна

BLA_SIZEOF_INTEGER

Новая версия 3.22.

Укажите размер целого числа для библиотеки BLAS/LAPACK:

4

Искать BLAS/LAPACK с 32-битными целочисленными интерфейсами.

8

Искать BLAS/LAPACK с 64-битными целочисленными интерфейсами.

ANY

Искать любой BLAS/LAPACK. Скорее всего, будет найден BLAS/LAPACK с 32-битными целочисленными интерфейсами.

Импортированные цели

Этот модуль определяет следующие IMPORTED цели:

BLAS::BLAS

Новая версия 3.18.

Библиотеки для использования с BLAS, если они найдены.

Переменные результата

Этот модуль определяет следующие переменные:

BLAS_FOUND

найдена библиотека, реализующая интерфейс BLAS

BLAS_LINKER_FLAGS

кешированный список необходимых флагов компоновщика (исключая -l и -L).

BLAS_LIBRARIES

кешированный список библиотек (с полным именем пути) для компоновки с использованием BLAS (может быть пустым, если компилятор неявно подключает BLAS)

BLAS95_LIBRARIES

кешированный список библиотек (с полным именем пути) для компоновки с использованием интерфейса BLAS95

BLAS95_FOUND

найдена библиотека, реализующая интерфейс BLAS95

Поставщики BLAS/LAPACK

Generic

Общая справочная реализация

ACML, ACML_MP, ACML_GPU

Библиотека AMD Core Math Library

Apple, NAS

Apple BLAS (Accelerate) и Apple NAS (vecLib)

Arm, Arm_mp, Arm_ilp64, Arm_ilp64_mp

Новая версия 3.18.

Arm Performance Libraries

ATLAS

Автоматически настроенное программное обеспечение линейной алгебры

CXML, DXML

Библиотека Compaq/Digital Extended Math Library

EML, EML_mt

Новая версия 3.20.

Библиотека Elbrus Math Library

FLAME

Новая версия 3.11.

Фреймворк BLIS

FlexiBLAS

Новая версия 3.19.

Fujitsu_SSL2, Fujitsu_SSL2BLAMP, Fujitsu_SSL2SVE, Fujitsu_SSL2BLAMPSVE

Новая версия 3.20.

Последовательная и параллельная библиотеки blas/lapack Fujitsu SSL2 с инструкциями SVE

Goto

GotoBLAS

IBMESSL, IBMESSL_SMP

Библиотека IBM Engineering and Scientific Subroutine Library

Intel

Устаревшие версии Intel MKL 32-бит и 64-бит

Intel10_32

Intel MKL v10 32 бита, потоковая обработка

Intel10_64lp

Intel MKL v10+ 64 бита, потоковая обработка, модель lp64

Intel10_64lp_seq

Intel MKL v10+ 64 бита, последовательный код, модель lp64

Intel10_64ilp

Новая версия 3.13.

Intel MKL v10+ 64 бита, потоковая обработка, модель ilp64

Intel10_64ilp_seq

Новая версия 3.13.

Intel MKL v10+ 64 бита, последовательный код, модель ilp64

Intel10_64_dyn

Новая версия 3.17.

Intel MKL v10+ 64 бита, одна динамическая библиотека

NVHPC

Новая версия 3.21.

NVIDIA HPC SDK

OpenBLAS

Новая версия 3.6.

PhiPACK

Портативная высокопроизводительная ANSI C (PHiPAC)

SCSL, SCSL_mp

Библиотека программного обеспечения для научных вычислений

SGIMATH

Библиотека научных математических вычислений SGI

SunPerf

Библиотека производительности Sun

Intel MKL

Для использования реализации Intel MKL для BLAS проект должен включить хотя бы один из языков C или CXX. Установите BLA_VENDOR на вариант Intel MKL либо в командной строке как -DBLA_VENDOR=Intel10_64lp, либо в коде проекта:

set(BLA_VENDOR Intel10_64lp)
find_package(BLAS)

Для создания проекта с использованием Intel MKL пользователь должен сначала создать среду Intel MKL:

Intel oneAPI

Запустите полную среду Intel:

. /opt/intel/oneapi/setvars.sh

Или запустите среду компонента MKL:

. /opt/intel/oneapi/mkl/latest/env/vars.sh
Intel Classic

Запустите полную среду Intel:

. /opt/intel/bin/compilervars.sh intel64

Или запустите среду компонента MKL:

. /opt/intel/mkl/bin/mklvars.sh intel64

Вышеперечисленные скрипты среды устанавливают переменную среды MKLROOT в начало установки MKL. Они также добавляют расположение библиотек выполнения в переменную среды загрузчика динамических библиотек вашей платформы (например, LD_LIBRARY_PATH). Это необходимо для запуска программ, скомпонованных с MKL.

Примечание

Начиная с Intel oneAPI 2021.2, загрузка только компонента MKL не делает доступными все его зависимости. В частности, библиотека iomp5 должна быть доступна отдельно или предоставляться при загрузке среды компонента компилятора:

. /opt/intel/oneapi/compiler/latest/env/vars.sh

© 2000–2022 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.23/module/FindBLAS.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API