Repolode
OpenMathLib

OpenMathLib/OpenBLAS

Оптимизированная библиотека BLAS и LAPACK с открытым исходным кодом для многих архитектур CPU, без поддержки GPU.

Open source альтернатива:Intel MKL

Звёзды
7,669
Форки
1,751
Открытые issues
163
Последний коммит
5 часов назад

Что это?

OpenBLAS — библиотека, реализующая процедуры BLAS (Basic Linear Algebra Subprograms) — стандартные низкоуровневые строительные блоки для операций с векторами и матрицами, которые используются в численном ПО. Она основана на GotoBLAS2 1.13 под лицензией BSD и также включает LAPACK — пакет линейной алгебры более высокого уровня — вместе с интерфейсом LAPACKE для C.

В библиотеку входят оптимизированные ядра для широкого спектра процессоров, включая поколения Intel x86-64 от Sandy Bridge до Sapphire Rapids, AMD Zen, ядра ARM64, такие как Neoverse и Cortex-A, а также POWER, IBM Z, векторные расширения RISC-V и LoongArch. Сборка с DYNAMIC_ARCH может включать несколько целевых архитектур в одну библиотеку и выбирать подходящие ядра во время выполнения. Для сборки используются make или CMake; поддерживается кросс-компиляция.

OpenBLAS работает в GNU/Linux, Windows (MinGW или Visual Studio), macOS и нескольких вариантах BSD, а также поддерживает WebAssembly. Число потоков можно задавать через переменные среды или функции времени выполнения.

Ключевые возможности

  • 01Реализует BLAS и включает LAPACK с интерфейсом LAPACKE для C.
  • 02Предоставляет оптимизированные ядра для множества процессоров x86, ARM64, POWER, IBM Z, RISC-V и LoongArch.
  • 03Сборки DYNAMIC_ARCH включают несколько целевых архитектур CPU и выбирают ядра во время выполнения.
  • 04Поддерживает сборку с помощью make и CMake, включая кросс-компиляцию.
  • 05Число потоков можно настраивать через переменные среды или функции времени выполнения.
  • 06Доступна в виде бинарных пакетов для Windows и через множество менеджеров пакетов.

Сценарии использования

  • Ускорение вычислений с матрицами и векторами в научных вычислениях и численных библиотеках.
  • Использование в качестве бэкенда BLAS/LAPACK для R, NumPy, SciPy и других численных стеков.
  • Разработка высокопроизводительного кода линейной алгебры для встроенных и серверных CPU с разными архитектурами.
  • Запуск численных задач в браузерах с помощью сборок WebAssembly.

Быстрый старт

  1. 1

    Получите исходный код с GitHub (ветка по умолчанию — develop).

  2. 2

    Соберите библиотеку с помощью make (CPU определяется автоматически).

    make
  3. 3

    Установите её в выбранный каталог.

    make install PREFIX=your_installation_directory

Что важно знать

  • GPU не поддерживаются.
  • Для сборки из исходного кода требуется компилятор C; некоторые целевые CPU поддерживаются только предварительно.

Темы

Частые вопросы

Что такое OpenBLAS?
Оптимизированная библиотека BLAS и LAPACK с открытым исходным кодом для многих архитектур CPU, без поддержки GPU. OpenBLAS — библиотека, реализующая процедуры BLAS (Basic Linear Algebra Subprograms) — стандартные низкоуровневые строительные блоки для операций с векторами и матрицами, которые используются в численном ПО. Она основана на GotoBLAS2 1.13 под лицензией BSD и также включает LAPACK — пакет линейной алгебры более высокого уровня — вместе с интерфейсом LAPACKE для C.
OpenBLAS можно использовать бесплатно? Какая у него лицензия?
OpenBLAS распространяется с открытым исходным кодом под лицензией BSD-3-Clause. Перед использованием в коммерческих продуктах проверьте условия лицензии.
OpenBLAS всё ещё поддерживается?
Активно поддерживается. Последний коммит в OpenBLAS — 7 нояб. 2026 г..
Для чего можно использовать OpenBLAS?
Ускорение вычислений с матрицами и векторами в научных вычислениях и численных библиотеках. Использование в качестве бэкенда BLAS/LAPACK для R, NumPy, SciPy и других численных стеков. Разработка высокопроизводительного кода линейной алгебры для встроенных и серверных CPU с разными архитектурами. Запуск численных задач в браузерах с помощью сборок WebAssembly.
Как установить OpenBLAS?
Получите исходный код с GitHub (ветка по умолчанию — develop). Соберите библиотеку с помощью make (CPU определяется автоматически).: make Установите её в выбранный каталог.: make install PREFIX=your_installation_directory
Где скачать OpenBLAS?
Исходный код и инструкции по установке — на GitHub: https://github.com/OpenMathLib/OpenBLAS

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

SIMD-ускоренные математические ядра для вычисления расстояний, скалярных произведений и матричных операций с 15+ числовыми типами и привязками для Python, Rust, C/C++, JS, Swift и Go.

1,9 тыс.+4 за неделю142CApache-2.0Обновлён 7 дней назад