针对循环内条件转移指令的转移预测优化方法

    公开(公告)号:CN112445520A

    公开(公告)日:2021-03-05

    申请号:CN201910794939.2

    申请日:2019-08-27

    Abstract: 本发明公开一种针对循环内条件转移指令的转移预测优化方法,包括以下步骤:S11、判断一次循环内的指令条数是否能够满足带条件标记的运算指令在带条件转移标志位的条件转移指令之前至少提前N条的条件;S12、如果满足条件,编译器直接生成汇编代码,如果不满足,编译器根据循环体代码量与条件N计算需要循环展开的次数,进行循环展开,生成汇编代码;S13、带条件标记的运算指令提前改变条件转移指令的转移标志位;S14、条件转移指令根据对应的条件标记位进行判断,如果成立,则处理器根据条件转移标记指示跳转取指,否则顺序取指;S15、不论预测为跳转还是不跳转,条件标记位使用后即作废,转移指令条件标记位清0。本发明能够规避循环最后一次转移带来的性能损失。

    低功耗的寄存器分配编译优化方法

    公开(公告)号:CN112445481A

    公开(公告)日:2021-03-05

    申请号:CN201910794940.5

    申请日:2019-08-27

    Abstract: 本发明公开一种低功耗的寄存器分配编译优化方法,包括以下步骤:S1、分析程序的热点函数和循环段;S2、统计热点代码段中依赖关系语句执行频率;S3、登记存在依赖关系语句中临时变量的生存周期;S4、关闭针对该依赖关系语句性能相关的指令调度优化,防止因为考虑流水线性能而进行的指令调度;S5、对每个依赖关系的临时变量进行基本块内的生存周期分析;S6、对每个依赖关系的临时变量进行跨基本块的生存周期分析;S7、遍历所有基本块,对标记为可低功耗优化的临时变量追踪其定义和使用点(define&use);S8、进行W_set指令循环外提优化。本发明在一定程度上优化系统运行功耗,且软硬件开发成本低,对降低功耗的方法简单直接,在考虑性能的前提下,最大限度的挖掘寄存器低功耗潜力。

Patent Agency Ranking