mnn-tutorial

MNN端侧推理部署--从环境配置到读懂代码

mnn-tutorial

本tutorial介绍 MNN 端侧推理部署的完整流程,包括环境配置&运行、核心概念讲解、代码流畅梳理。

tutorial概览

阶段 内容 文章数
环境配置 远程调试、交叉编译、设备运行 4 篇
核心概念 Backend、工厂模式、核心类 3 篇
MNN-LLM 配置、加载、推理、QNN Plugin 6 篇

1. 环境配置

搭建端侧开发调试环境的完整指南。

文章 说明 状态
远程ADB环境配置 通过端口转发链路,让内网服务器直连本地手机 ✅ 完成
交叉编译环境配置 Android NDK 配置、Clangd 配置、远程调试 ✅ 完成
llm_demo 交叉编译与运行 llm_demo 为例,记录从编译到设备运行的最短路径 ✅ 完成
llm_demo 在 QNN 后端的运行 记录 llm_demo 通过 config_qnn.json 和 QNN 产物在 Android 设备上运行 ✅ 完成

2. 核心概念

深入理解 MNN 框架的设计理念与核心组件。

文章 说明 状态
核心类介绍 VARP、Expr、Op 等关键类的设计 ✅ 完成
Backend 介绍 CPU/OpenCL/Vulkan 等后端的作用和选择 ✅ 完成
工厂模式介绍 MNN 中工厂模式的设计与应用 ✅ 完成

3. MNN-LLM

端侧大语言模型部署实践。

文章 说明 状态
LLM 配置 模型配置、量化配置 ✅ 完成
LLM 加载流程 模型文件到推理就绪的完整过程 ✅ 完成
LLM 推理流程 Token 处理、KV Cache 管理 🚧 WIP
Eagle 推理流程 speculative decoding 中 Eagle 路径的 draft、验证与 KV 回写 ✅ 完成
LLM QNN 离线导出流程 generate_llm_qnn.pycompilefornpu 和 QNN context binary 生成链路 ✅ 完成
LLM QNN Plugin 推理流程 Plugin(type="QNN") 从 shape 匹配到 graphExecute() 的运行时路径 ✅ 完成

相关链接

Licensed under CC BY-NC-SA 4.0
最后更新于 2026-06-04