pytorch/FBGEMM

FB (Facebook) + GEMM (General Matrix-Matrix Multiplication) - https://code.fb.com/ml-applications/fbgemm/

解决的问题

FBGEMM 为深度学习应用提供高度优化的内核,专注于通过使用低精度算术来提升服务器端推理的速度与效率。它解决了通常与低精度矩阵乘法和卷积相关的带宽受限操作与精度损失等挑战。

工作原理

本项目分为三个专用包:

  • FBGEMM:一个适用于 x86 机器的库,提供高性能、低精度的通用矩阵乘法 (GEMM) 和卷积,利用逐行和感知异常值的量化等技术来保持精度。
  • FBGEMM_GPU:一系列专为训练和推理设计的 PyTorch GPU 算子库,特别针对推荐系统。
  • FBGEMM_GPU GenAI:一系列专为生成式 AI 量身定制的 GPU 算子库,提供 FP8 逐行量化和集体通信等功能。

适用人群

从事深度学习推理引擎开发的开发者与研究人员,特别是在 x86 服务器或 GPU 上使用 PyTorch,且需要最大化性能并优化低精度操作的用户。

亮点

  • 低精度优化:用于高性能矩阵乘法与卷积的专用内核。
  • PyTorch 集成:作为 x86 机器上 PyTorch 量化算子的后端。
  • 量化技术:支持逐行和感知异常值的量化,以将精度损失降至最低。
  • GenAI 支持:用于生成式 AI 的专用 GPU 算子,包括 FP8 量化。
  • 广泛的硬件支持:针对 x86 服务器和 GPU 进行优化,并提供华为 Ascend NPU 的社区移植版本。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目