在 RKNN2 中将 ViT 的卷积层转换为矩阵乘法

背景

在上一篇 将 ViT 的第一个卷积层转为 MatMul,要求步长和卷积核相等 中,我们介绍了如何将 ViT 的第一层卷积转换为矩阵乘法。在这篇文章中,我们将讨论这种变化在 RKNN2 工具链里带来的性能收益。

测试

模型 设备 输入尺寸 平均推理时间 (ms)
卷积层 Apple M4-CPU 1x3x384x384 3.32 ± 0.50
Cortex A57-CPU 1x3x384x384 TBD
RKNN 1x3x384x384 TBD
将卷积层转为线性层 Apple M4-CPU 1x576x768 2.82 ± 0.43
Cortex A57-CPU 1x576x768 TBD
RKNN 1x576x768 TBD

其他

代码见 GitHub


在 RKNN2 中将 ViT 的卷积层转换为矩阵乘法
http://hebangwen.github.io/2025/07/03/vit-conv-to-matmul-rknn-part-II/
作者
何榜文
发布于
2025年7月3日
许可协议