Page 88 - 《软件学报》2026年第6期
P. 88

刘佳玮 等: 面向   RISC-V  架构的深度学习算子测试                                                 2407


                 为  128  位或  256  位) 破坏了原有的缓存行对齐, 在中等数据规模下反而增加了跨缓存行访问次数. 上述结果表明,
                 RVV  的性能收益与算子类型和数据规模高度相关, 更适合在特定条件下进行选择性应用.
                    综上所述, RIVdoo   能够系统性地揭示并量化          RISC-V  平台上算子在效率、呈现出的平台相关行为差异与资
                 源敏感特征. 具体而言, RIVdoo      在实验中观察到并量化了不同实现的             MatMul 与  Dense 算子在  CPU  时间上存在
                 的显著差异, Softmax  与  BatchNorm  算子在常驻内存与缺页率指标上呈现出特定配置下、明显偏离常规模式的行
                 为特征, 以及   TVM  在低复杂度场景中出现系统开销占比显著上升的现象. TFLite 的预编译策略在                      RISC-V  静态编
                 译环境下相比     TVM  的动态优化具有系统性优势, 但以           1.5–2  倍的内存开销为代价; TVM     的动态存储调度策略在
                 RISC-V  有限的  TLB  和缓存容量下导致页表抖动, 需要针对平台约束重新设计; RVV                 向量化优化在计算密集型算
                 子和高复杂度场景下有效, 但在特定算子类型               (除法、取模) 和低复杂度场景下反而引入性能劣化, 需要进行选择
                 性应用. 这些行为差异与潜在适配风险通过              RIVdoo  的多维度评估得以被捕捉和量化, 而传统仅依赖精度正确性
                 验证的方法则通常难以覆盖上述与资源约束和体系结构特性相关的行为模式. 需要指出的是, 本文所识别的结果
                 均基于多维度性能指标与复杂度放大系数的系统性实验分析, 其目的在于刻画算子在                            RISC-V  架构下的运行行为
                 特征及潜在适配风险, 而非对算子实现正确性作出最终裁决. 相关现象已整理为可复现的问题描述并提交至上游
                 社区  (详见  https://github.com/yanyanyyy720/OperatorTestForRiscv/blob/main/issue.md), 供后续验证与讨论.

                  5   总结与展望

                    本文提出了一种面向 RISC-V 架构的深度学习算子质量评估方法 RIVdoo, 针对现有算子测试方法难以适应
                 RISC-V 特有的资源受限与高度可定制的问题, 提供了系统化的测试与分析框架. 该方法通过基于算子输入空间复
                 杂度的分组策略覆盖不同计算负载, 结合多维度指标评估算子的精度、执行效率、内存占用及系统开销, 并引入
                 复杂度放大系数的差分测试机制, 用于刻画算子在不同复杂度层级下的行为变化模式, 有效识别潜在的性能异常
                 与平台相关的适配风险. 在覆盖          47  个包括计算密集型、内存密集型及轻量型在内算子的实验中, RIVdoo 发现
                 TFLite 的预编译策略在     RISC-V  平台上相比   TVM  具有  30%–50%  的速度优势但以     1.5–2  倍的内存开销为代价;
                 TVM  的动态存储调度策略因        RISC-V  有限的  TLB  和缓存容量导致缺页率比        TFLite 高  60%–150%; RVV  向量化
                 优化在计算密集型算子和高复杂度下有效, 但在部分算子和低复杂度场景下反而导致性能下降. 上述结果表明,
                 RIVdoo 能够系统性地揭示算子在 RISC-V 架构下的复杂度敏感行为与资源相关特征, 相关现象已整理为可复现
                 的问题描述, 并提交至 TVM、TFLite 等上游开源社区, 目前仍处于社区进一步验证与讨论阶段.
                    未来工作将重点考虑扩展复杂度分组理论至                RISC-V  异构计算场景, 研究    RVV  参数配置   (向量长度、寄存器
                 分组) 对算子性能的影响规律, 以及将复杂度分组策略扩展到子图和完整模型层级的端到端测试, 这将有助于构建
                 更完善的 RISC-V 深度学习算子测试体系, 为算子优化、平台调优及高质量 RISC-V 软件生态的发展提供坚实基础.

                 References
                  [1]   Liu C, Wu YJ, Wu JZ, Zhao C. Survey on RISC-V system architecture research. Ruan Jian Xue Bao/Journal of Software, 2021, 32(12):
                     3992–4024 (in Chinese with English abstract). http://www.jos.org.cn/1000-9825/6490.htm [doi: 10.13328/j.cnki.jos.006490]
                  [2]   Li YW, Yin LZ, Dong W, Liu JX, Hu YF, Li SS. Hetrify: Efficient verification of heterogeneous programs on RISC-V. In: Proc. of the
                     47th IEEE/ACMInt’l Conf. on Software Engineering (ICSE). Ottawa: IEEE, 2025. 618–618. [doi: 10.1109/ICSE55347.2025.00081]
                  [3]   Han JC, Wang ZD, Ma H, Song W. Spike-FlexiCAS: RISC-V processor simulator supporting flexible cache architecture configuration.
                     Ruan Jian Xue Bao/Journal of Software, 2025, 36(9): 3954–3969 (in Chinese with English abstract). http://www.jos.org.cn/1000-9825/
                     7358.htm [doi: 10.13328/j.cnki.jos.007358]
                  [4]   Han LT, Zhang HB, Xing MJ, Wu YJ, Zhao C. Optimization method for high-performance libraries targeting RISC-V vector extension.
                     Ruan Jian Xue Bao/Journal of Software, 2025, 36(9): 3985–4005 (in Chinese with English abstract). http://www.jos.org.cn/1000-9825/
                     7360.htm [doi: 10.13328/j.cnki.jos.007360]
                  [5]   Agosta G, Galimberti A, Zoni D. Deep learning on RISC-V platforms at the edge: A perspective on the hardware and software support.
                     ACM Computing Surveys, 2025, 58(5): 121. [doi: 10.1145/3772277]
                  [6]   Li  RS,  Peng  P,  Shao  ZY,  Jin  H,  Zheng  R.  Evaluating  RISC-V  vector  instruction  set  architecture  extension  with  computer  vision
   83   84   85   86   87   88   89   90   91   92   93