
ComputeLibrary
Arm 平台上的 CV/ML 算子加速库,榨干 CPU 与 GPU 性能。
ComputeLibrary 是 Arm 官方开源的高性能计算库,用 C++ 编写,面向计算机视觉与机器学习场景,针对 Arm CPU 和 GPU 做了深度优化。它解决的问题是:在移动端、嵌入式、边缘设备等 Arm 平台上,通用算子库往往无法充分发挥 NEON、SVE、OpenCL 等硬件能力,导致推理和图像处理效率偏低。核心能力包括:提供卷积、池化、激活、归一化等神经网络算子,以及图像缩放、色彩转换等 CV 函数;同时支持 aarch64、armv7、armv8 架构和 Android、Linux 系统,通过 SIMD 与 OpenCL 后端加速。它既可作为独立算子库使用,也常被集成进推理框架作为底层加速层,适合需要精细控制 Arm 硬件性能的开发者。
项目数据
使用教程
⚠ 该项目 README 未提供完整安装说明,以下步骤为通用流程,请以官方文档为准。
环境要求
- 目标平台为 Arm Cortex-A、Neoverse 或 Mali GPU 架构(aarch64/armv7/armv8)
- Linux 或 Android 操作系统
- 具备 C++ 编译环境(如需自行构建)
- 使用 GPU 加速时需具备 OpenCL 运行环境
安装与启动步骤
-
1获取源码
从 GitHub 克隆 ComputeLibrary 仓库到本地,作为后续构建或集成的代码来源。
git clone https://github.com/ARM-software/ComputeLibrary.git -
2选择集成方式
可使用官方发布的预编译二进制,或按文档从源码构建。README 未给出具体构建参数,需查阅官方文档。
-
3查阅官方文档
README 指向官方文档站点,其中包含构建配置项与 API 使用说明,编译前请先阅读。
如何确认成功
构建或解压后得到 libarm_compute 相关静态库文件(如 libarm_compute.a),即表示库已就绪。
常见问题
Q:静态库名称有变化吗?
A:有。自 2026 年起的首个及之后版本的预编译二进制中,libarm_compute-static.a 将更名为 libarm_compute.a。
Q:支持哪些数据类型?
A:支持 FP32、FP16、INT8、UINT8 和 BFLOAT16 多种数据精度。
Q:支持哪些硬件加速后端?
A:CPU 侧支持 Arm Cortex-A 与 Neoverse 的 SIMD 优化(如 SVE2),GPU 侧支持 Arm Mali 系列 GPU。
Q:许可证是什么?
A:采用宽松的 MIT 开源许可证。
注意事项
- 2026 年起预编译静态库 libarm_compute-static.a 更名为 libarm_compute.a,升级时注意链接名调整
- 库针对 Arm 架构优化,非 Arm 平台无法发挥性能优势
- README 节选中未提供具体构建命令,请以官方文档(Documentation 链接)为准
核心亮点
- Arm 官方维护,针对 NEON/SVE/OpenCL 做了指令级优化,性能有保障
- 同时覆盖计算机视觉与神经网络算子,CPU 与 GPU 双后端可切换
- 支持 aarch64、armv7、armv8 及 Android/Linux,移动端与边缘设备适配广
不足之处
- C++ 接口偏底层,上手门槛高,不适合快速原型开发
- 文档与示例相对偏工程化,社区问答活跃度不如通用框架
- 主要绑定 Arm 生态,x86 等平台价值有限
适用场景
- 在 Android 手机上部署轻量神经网络推理,追求低延迟
- 边缘 Arm 设备上做实时图像预处理与 CV 算子加速
- 为自研推理框架集成 Arm 底层算子加速层
替代项目
oneDNN、XNNPACK、NNPACK
项目介绍
同类项目推荐
freebuff-proxy
开源
聚合多账号,一键接入 OpenAI 兼容 API,轻松管理会话。
OpenAI-compatible gateway for FreeBuff coding models. Token pool, session lifecycle,···
microduck
开源
用 Rust 造一只会走路的桌面小鸭,快速上手双足机器人。
A Tiny biped duck robot
soperator
开源
用 Kubernetes 原生方式运行 Slurm,简化 HPC 集群管理。
Run Slurm in Kubernetes
ollama
开源
一条命令本地跑起大模型,免费、私密、不卡顿
Get up and running with Kimi, GLM, MiniMax, DeepSeek, gpt-oss, Qwen, Gemma and other···