OpenBLAS 0.3.21 现已发布,OpenBLAS 是一个优化的 BLAS 库,基于 GotoBLAS2 1.13 BSD 版本。
BLAS(Basic Linear Algebra Subprograms 基础线性代数程序集)是一个应用程序接口(API)标准,用以规范发布基础线性代数操作的数值库(如矢量或矩阵乘法)。该程序集最初发布于 1979 年,并 用于建立更大的数值程序包(如 LAPACK)。在高性能计算领域,BLAS 被广泛使用。例如,LINPACK 的运算成绩则很大程度上取决于 BLAS 中子程序 DGEMM 的表现。为提高性能,各軟硬件厂商则针对其产品对 BLAS 接口实现进行高度优化。
一些更新亮点如下:
- 现在支持使用 Intel IFX、Fujitsu FCC 和 Cray C/Fortran 编译器构建 OpenBLAS。
- 初步支持兆芯/Centaur KH40000 处理器。
- OpenBLAS 的 CMake 构建系统现在支持对单个 Intel 和 AMD x86_64 目标进行交叉编译。现在有暴露的 CMake 目标,从 Intel Prescott 到 Sapphire Rapids,然后在 AMD 方面从 Barcelona 到 Zen。
- 各种 IBM POWER 修复,包括许多 Power10 修复。OpenBLAS POWER 构建现在还可以默认编译 BFLOAT16 内核。
- OpenBLAS RISC-V CPU 自动检测逻辑已修复。
- 添加了 Arm Neoverse-N2 的 SBGEMM 内核。
- 支持运行 Microsoft Windows 的 64 位 Arm 系统。
- 在 Linux 上对 Apple M1 CPU 的初始支持。
- 初步支持 Phytium FT2000 处理器。
- 对 Arm Cortex A510 / A710 / X1 / X2 处理器的初步支持。
- 修复 OpenBLAS 在不同条件下在各种 x86_64 CPU 目标上的编译。
- 初步支持龙芯 2K1000 处理器
更多详情可查看:https://github.com/xianyi/OpenBLAS/releases/tag/v0.3.21