LogoYet Another 何榜文's Blog

Yet Another 何榜文's Blog

MNN GPU float16 使用原理
发表于2024-03-11
我观察到 MNN 在使用 GPU OpenCL 时,会默认使用 float16 的格式,导致模型评测时时间不同,如图。因此查看了 MNN 的源码,发现了一些有趣的东西。 MNN 使用 MNN::BackendConfig::Precision_Low 时,会根据 GPU 的实际情况判断是否使用 float16 的数据格式。代码随附。 当导出的模型可以使用 float32 或者 float16 保存,当权重转换到 GPU 上时,会转换格式,在代码的第19行到第22行。代码随附。 Pipeline 中保存的 tensor 指向的 opencl buffer 保存的还是 float16。但是 OpenCL::onMapTensor 和 OpenCL::onUnmapTensor 的实现保证了映射前后得到的是 float32。OpenCLBackend::onAcquire 给出了 tensor 中保存的 buffer 格式,其中调用了 isSupportedFP16 判断目前是否支持 float16,如果支持则使用 float16 的大小创建 buffer。 OpenCLBacken...
1…56
avatar
何榜文
文章
51
标签
92
分类
8
Follow Me
公告
One week is 2% of a year
最新文章
端侧 AI 推理框架周报(2026-06-14 ~ 2026-06-21)2026-06-21
论文速读:在移动 NPU 上跑通端到端 RAG——高通 Hexagon 的 Benchmark 答卷2026-06-16
端侧 AI 推理框架周报(2026-06-07 ~ 2026-06-14)2026-06-14
端侧 AI 推理框架周报(2026-05-17 ~ 2026-05-23)2026-05-24
端侧 AI 推理框架周报(2026-05-10 ~ 2026-05-17)2026-05-17
分类
  • AI1
    • Deep Learning1
  • AI 系统9
  • Effective STL6
  • 技术分析1
  • 系统编程1
  • 论文解读2
    • AI 系统1
标签
Functor 推理框架 RAG 性能优化 高通 llama.cpp STL 端侧推理 Effective STL 多模态大模型 executorch DeepSeek Qwen 并行计算 Delta Rule Tokenizers RKNN glibc 深度学习 c++ String LayerNorm AI 系统 MNN tpu-mlir RMSNorm TVM 动态链接 数值精度 TTS GQA Transformer 综述 LLaMa2 T9输入法 Qwen2.5-VL transformer Attention Whisper clip
归档
  • 六月 2026 3
  • 五月 2026 6
  • 四月 2026 2
  • 三月 2026 8
  • 七月 2025 1
  • 六月 2025 5
  • 四月 2025 1
  • 三月 2025 2
网站信息
文章数目 :
51
本站访客数 :
本站总浏览量 :
最后更新时间 :
© 2025 - 2026 By 何榜文框架 Hexo 7.3.0|主题 Butterfly 5.5.4