Spec-Zone.ru › CMake 3.28

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.

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

BLA_PKGCONFIG_BLAS

Новое в версии 3.25.

Если установлено, метод pkg-config будет искать это имя модуля вместо простого 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

AOCL, AOCL_mt

Новое в версии 3.27.

Оптимизированные библиотеки AMD CPU

Apple, NAS

Apple BLAS (Accelerate) и Apple NAS (vecLib)

Arm, Arm_mp, Arm_ilp64, Arm_ilp64_mp

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

Библиотеки Arm Performance

ATLAS

Программное обеспечение для автоматизированного настраиваемого решения линейной алгебры

CXML, DXML

Расширенная математическая библиотека Compaq/Digital

EML, EML_mt

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

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

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

Intel

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

Intel10_32

Intel MKL v10 32-bit, многопоточный код

Intel10_64lp

Intel MKL v10+ 64-bit, многопоточный код, модель lp64

Intel10_64lp_seq

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

Intel10_64ilp

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

Intel MKL v10+ 64-bit, многопоточный код, модель ilp64

Intel10_64ilp_seq

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

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

Intel10_64_dyn

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

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

NVHPC

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

NVIDIA HPC SDK

OpenBLAS

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

PhiPACK

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

SCSL, SCSL_mp

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

SGIMATH

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

SunPerf

Библиотека Sun Performance

Intel MKL

Для использования реализации BLAS Intel MKL проект должен включить как минимум один из языков 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–2024 Kitware, Inc. and Contributors
Licensed under the BSD 3-clause License.
https://cmake.org/cmake/help/v3.27/module/FindBLAS.html

Spec-Zone.ru

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