这个仓库中的 skills
为 MNN 框架新增算子。包含 Schema 定义、形状计算、几何计算、后端实现、单元测试的完整 TDD 流程。分 5 步执行,每步有独立测试标准。
MNN ARM CPU 算子和低 bit kernel 性能优化。重点覆盖正确性基线、C++ 标量 oracle、C++ SIMD 模拟、寄存器规划、ARM 汇编实现、dispatch/pack 集成、模型级回归和 roofline 性能分析。
MNN 各类正确性/回归 bug 的排查方法论集合。按 bug 分类组织:当前覆盖 (1) 内存别名/生命周期错误(buffer aliasing、arena reuse、`MemChunk` / tensor buffer 生命周期)、(2) 量化误差/导出侧权重损坏(低 bit 打包、导出分块、PyTorch MPS/CUDA 大张量静默错误),后续会补充数值精度、并发竞争、图优化回归、Codegen/Shader 错等类别。
Optimize, refactor, build, and regression-test MNN Hexagon/HVX/HMX DSP code paths under `source/backend/hexagon`, using device profile data, correctness checks, and cDSP crash diagnostics.
MNN Metal 后端 op/kernel 优化与扩展入口。索引四份 sub-doc:kernel 修改方法论(新加 op / quant bit / dispatcher / weight pack)、LLM 优化知识库(kernel 层 GEMM/GEMV/attention + 系统架构层 + 失败实验档案 + 测量基建)、构建-测试-性能基线、env 开关注册表。根据当前任务选择性阅读对应 sub-doc。
MNN OpenCL 后端 kernel 性能优化与新特性集成。覆盖 benchmark 基线、kernel 优化迭代、集成验证全流程,以及新 OpenCL 特性适配、.cl + codegen 双轨、kernel 选路、packed weight 设计、tune 机制、Android 真机验证等参考知识。
MNN QNN(高通 HTP/NPU)后端的问题定位、修复与算子适配。覆盖运行时报错(1002/6000/1003/6004)、模型转换/算子校验失败、推理结果异常、精度不达标、以及性能问题;并指导为 QNN 新增/适配算子。核心方法:用 MNN2QNNModel --dump_intermediate_outputs 一次性导出 QNN 全部中间张量,与 CPU(fwd=0) 基线逐张量对比,直接定位首个出错算子(旧的 testMNNFromOnnx.py 截断二分已降为回退手段);区分“真 bug/量化/HTP fp16 精度”;新增算子先查 SDK 算子文档(MasterOpDef/HtpOpDefSupplement)再实现。
任务完成后的反思与经验沉淀。仅在任务非平凡且出现调试、失败修复、反复试错、明显误判或可复用教训时使用;简单执行、查询、常规 CI 通过等无新增经验的任务可跳过。
MNN RISC-V CPU 算子与 LLM 性能优化工作流,覆盖标准 RVV、厂商矩阵扩展(如 SpacemiT IME/IME2)、低比特 GEMM/GEMV/Linear/MatMul、Attention、KV Cache、数据重排、TCM/local-memory 流水和远端开发板验证。用户要求优化或评审 RISC-V/RVV kernel、prefill/decode 性能、量化计算、架构分层、远端板端 benchmark,或排查 RISC-V 专用路径性能回归时使用。
为 MNN 框架添加新的 LLM 模型支持。支持从 HuggingFace/ModelScope 下载模型,分析架构,添加映射,Hook 对齐测试,导出 MNN 模型。采用 TDD 模式,分 6 步执行,每步有独立测试标准。
Run MNN tests / benchmarks on host or real devices. Covers two parallel tracks — (1) the regression / CI suite (static checks, host-side tests, on-device Android arm64 matrix via ./test.sh + test_stages.json) and (2) one-command iOS real-device LLM benchmarking (prefill/decode tok/s, branch comparison). Use when the user asks to run the tests, run CI, smoke-test a build, verify a change on a device, benchmark on-device (Android or iPhone/iPad), or add / select / retune a test stage.
MNN Vulkan 后端 op/kernel 优化与扩展。覆盖 GLSL .comp + makeshader 双轨、conv1x1 dispatcher 多路径、coopMat/subgroup 路径、weight prepare/pack 流程、Adreno 真机稳定性。