用于执行专用密集和稀疏矩阵操作以及 深度学习 原语的库。
LIBXSMM 是一个高性能的库,用于执行小型密集和稀疏线性代数操作,包括 GEMM 和 深度学习 应用中常见的元素级基本操作。它还作为 Tensor 处理基元(TPP)的参考实现,这是一种用于高效且可移植的 深度学习 和 HPC 工作负载的编程抽象。在 2.0 版中,LIBXSMM 专注于提供一组完整且可移植的 TPP(小型密集和稀疏矩阵操作以及元素级、GEMM 和 BRGEMM 基本操作),这些基元构成了高级操作,如卷积、全连接层、归一化和池化。LIBXSMM 面向 Intel 架构,支持 Intel SSE、Intel AVX、Intel AVX2、Intel AVX-512(带 VNNI 和 Bfloat16)以及 Intel AMX(高级矩阵扩展)、AArch64(NEON、SVE 和 SME)、RISC-V(RVV)和 PowerPC 64 位小端(POWER10 与 VSX 和 MMA)。代码生成主要基于即时(JIT)代码专化,实现编译器无关的性能(矩阵乘法、矩阵转置/复制、稀疏功能和张量基元)。LIBXSMM 适用于“一次构建,随处部署”,即无需特殊的目标标志即可利用可用的性能。支持的 GEMM 数据类型包括:FP64、FP32、FP16、bfloat16、BF8、HF8、MXBF8、MXHF8、MXINT8、int16、int8、MXBF6、MXHF6、MXFP4、int4、int2 和 int1。此外,还支持各种非标准的低精度组合。
LIBXSMM 2.0:此主要版本将 LIBXSMM 重新定位为张量处理基元的参考实现。为了使核心库保持专注,之前在此发布的多个应用特定组件已移至专用的伴随仓库:t
暂无开放 Issues,或尚未同步最近议题。