Spec-Zone.ru › CMake 3.24

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_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

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

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

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.24/module/FindBLAS.html

Spec-Zone.ru

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