ggml-org/ggml
机器学习无外部依赖的 C/C++ 张量库,提供量化内核与 CPU/GPU/NPU 后端,适合构建或运行机器学习推理。
项目介绍
ggml 是一个用纯 C/C++ 实现的张量库,不依赖任何外部库,目标是简单、可移植、高效的机器学习推理。它提供 x86、ARM、RISC-V、LoongArch、PowerPC、s390x 和 WebAssembly 的跨平台支持,针对 x86、ARM、RISC-V 有 SIMD 优化内核,后端覆盖 CPU、GPU、NPU 和浏览器,支持 2 到 8 位整数量化以及 MXFP4、NVFP4 微缩放格式,并且运行期零内存分配(README 描述)。
它是 ggml 系项目(最知名的是 llama.cpp)底层的张量层。如果你要把模型推理集成进 C/C++ 应用,而不是直接使用现成的模型运行器,这一层就是构建基础。
从源码构建
项目使用 CMake 构建。在装有 CMake 和 C/C++ 工具链的终端中执行:
git clone https://github.com/ggml-org/ggml
cd ggml
mkdir build && cd build
cmake ..
cmake --build . --config Release -j 8
README 指向 examples/simple 中的最小化、带完整注释的矩阵乘法示例,是了解 API 用法的最佳起点。发布版本见 releases 页面。
文档与文件格式
- GGUF 文件格式说明 ggml 系工具使用的模型容器格式。
- Introduction to ggml是一篇外部入门介绍。
- GGML tips & tricks汇总了 llama.cpp wiki 中的实用技巧。
使用约束与贡献
该库面向底层张量运算和后端选择,不负责高层模型加载;模型运行器(如 llama.cpp)建立在它之上。后端支持因平台而异,能否真正用上 GPU/NPU 加速取决于构建时检测到的环境。核心库采用 MIT 许可证。核心库(包括 CMake 构建系统)的改动被要求提交到 llama.cpp,而不是本仓库(README 贡献说明)。
HotRepo 点评
2026-11-14,ggml 以当日新增 139 Star 进入 C++ 日榜第 6 名,同一天 HN 上关于 v1.0.0 的讨论获得 311 分(HN 讨论)。有用信息主要在讨论里:一位长期用户对 50K token 的长提示词在例行升级前后各跑一次基准,运行时间从 4:22 降到 3:59,并称每次升级通常能带来 5% 到 10% 的提速(jacquesm)。另一位评论者认为 llama.cpp 是相对硬件专用推理引擎更「稳」的通用选择(dust42),还有只支持 Vulkan 的 AMD 显卡用户表示通过 ggml 系软件能正常跑本地推理(kodoman)。这些是用户观感而非本仓库的基准测试,但与项目强调的可移植 CPU/GPU 推理方向一致。
本文由 AI 根据项目 README 生成,更新于 ,以项目官方文档为准。
Hacker News 讨论
相关推荐
- pytorch/pytorch为需要直接在 Python 里训练深度网络的研究者提供 GPU 张量运算与自动求导的深度学习框架。
- tile-ai/tilelang让 kernel 作者用 Python 而非 CUDA 或 Triton 编写 GEMM、FlashAttention 等高性能 GPU/CPU/NPU 算子。
- 0xShug0/audio.cpp一个基于 ggml 的纯 C++ 音频推理运行时,无需 Python 就能在本地跑 TTS、语音识别、音乐生成等多种音频模型。
- microsoft/BitNet面向三进制 1.58-bit 大模型的推理引擎,让量化模型在普通 CPU 上跑得快又省电。
- kornia/kornia在 PyTorch 张量上提供可微的图像处理与几何视觉算子,让几何变换和数据增强留在计算图中,并在 GPU 上批量执行。