Page 36 - 《软件学报》2025年第9期
P. 36

李奕瑾 等: 基于   RISC-V VLIW  架构的混合指令调度算法                                            3947


                    为了更为详细地展示启发式规则对表调度性能的影响, 图                    9  给出了  CoreMark  中各函数在表调度    (是/否增加
                 启发式规则) 下的     IPC. 通过引入启发式规则, IPC     平均从   1.74  提升到  1.80, 提升了  3.09%.

                       3.0
                             IPC  IPC (新增启发式规则)
                       2.5

                       2.0
                      IPC  1.5

                       1.0

                       0.5

                         0






                                  图 9 CoreMark  中各函数在表调度      (是/否增加启发式规则) 下的       IPC

                 6.4   IPC  理论模型的性能评估
                    图  10  给出了  CoreMark  中调度区域内指令数的分布统计. CoreMark       在本文编译工具链下共有          446  个调度区
                 域, 其中  59.19%  的调度区域内指令数小于等于         4, 有  88.12%  的调度区域内指令数小于等于        10. 这使我们对调度
                 区域的规模有了大致的了解.

                          100
                           90   87
                           80  61
                         调度区域个数  60  59 57  39
                           70
                           50
                           40
                           30
                           20           27  19  24
                                              12
                           10                    8  4    8  4 5 3 5          4 2 2 1 1 1 1 1 1 1
                           0                         1 1           2 1 2 1 1
                              1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 19 22 23 25 27 29 30 31 32 33 34 45 55 69 88135
                                                         调度区域内指令数
                                         图 10 CoreMark  中调度区域内指令数分布统计图

                    本文使用规划调度求得的最优解来评估               IPC  理论模型. 图  11(a) 给出了  IPC  理论模型与规划调度算法的最优
                 解对应的    IPC  的差值分布. 可以看出, 在     446  个调度区域中, 有   95.52% (426  个) 的调度区域理论模型给出的       IPC
                 就是最优解的     IPC, 仅有  4.48% (20  个) 的调度区域理论模型的    IPC  与最优解有小于等于      2  个  cycle 的差距.
                    为了说明混合调度算法中理论模型降低了多少复杂度, 即有多少调度区域仅需表调度即可达到最优解, 图                                 11(b)
                 给出了理论模型和表调度的          IPC  的差值分布. 可以看出, 94.62% (422  个) 的调度区域理论模型与表调度的            IPC  相
                 同, 5.38% (24  个) 的调度区域  cycle 数差值小于等于   3. 即在理论模型的指导下, 94.62%      的调度区域在表调度下即
                 可认定达到最优解, 仅有       5.38%  的调度区域需再次进行规划调度.
                    由于理论模型在混合调度中实际被用于分类                (即判断表调度是否在一个调度区域内达到了最优解), 因此可以
                 用衡量分类模型性能的指标来评估            IPC  理论模型. 表  3  给出了真正   TP、假正   FP、假负   FN、真负   TN  的值, 用于
                 计算表   4  中的评价指标, 即准确率、精确度、召回率和            F1  值.
   31   32   33   34   35   36   37   38   39   40   41