期刊发表网电话

全国热线
022-83699069

浅谈低功耗多线程编译的优化技术

作者: 发布时间:2019-12-10 19:13:33 阅读: 71 次

论文发表过程中论文是核心,一篇好的论文决定着期刊发表成功与否。下文就是本站为职称论文发表提供的范文。

浅谈低功耗多线程编译的优化技术

 

摘要:随着微处理器的不断发展,移动应用逐渐深入,系统复杂度、频率等得到了较大的提升,因此在系统软硬件设计当中,对于功耗问题也更为关注。在编译技术中,除了对应用程序效率进行提升,利用编译充分分析应用程序行为,在不对程序性能产生影响的基础上,对处理器及系统的运行功率进行降低,是一个重要的问题。基于此,通过对多线程编译技术的优化,实现系统的低功耗,具有重要的意义和作用。基于此,本文主要对低功耗多线程编译的优化技术进行了分析。

关键词:低功耗;多线程编译;优化技术

 

前言:处理器和编译器是现代计算机系统当中的重要部分,给予特定目标系统结构和实现特征,确定后端编译优化。在这种处理当中,要对系统性能及效率进行有效的提升。在低功耗问题的研究中,要打破低层设计、电路技术的限制。在高性能处理器、嵌入应用、移动计算等技术的发展中,处理器功耗问题始终是一个重要问题,在关键设计中,较大的能耗问题也产生了较大的限制。而多线程处理器具有较高的吞吐率,因而在低功耗设计中具有较大的作用。

1低功耗优化及多线程划分

1.1线程划分

    对于低功耗编译优化,可对单片多EU结构模型进行应用,能够对多线程进行支持。将各个EU执行频率设定在相应范围中,利用特定指令,程序可进行独立动态调整。以多线程结构模型为基础,能够得到简单数据依赖代价图(DDG),可以利用DDG对各个程序进行表示,将一个执行代价附在一个节点之上。对DDG节点进行多线程的划分,对依赖关系进行满足,从而对执行时间、功耗等进行最小化[1]。如果结构中具有2个EU,可以线程间切换代价为基础,对相应调度进行划分。如果在2个线程后存在阴影扩展部分,则证明2个线程都不是关键代码,可以降频进行运行,同时确保程序执行性能不会受到影响。

1.2频率调整功耗

    在一个程序之间,利用提供电压、容量交换效率、时钟频率、执行时间等参数,可以对能量消耗及总执行时间进行计算,如果容量交换效率、总执行时间等,和时钟频率之间不具有相关性,则在动态电压调整系统当中,电压的变化和时钟频率之间,具有线性的关系。对于系统各个功能部件来说,应用程序通常具有不均衡性,因而某些功能部件、某段代码等,可能成为关键段或瓶颈,而其它的部分则处于等待的状态[2]。如果确保不超过合理的限定时间,可以降低频率执行非瓶颈、非关键的部件或代码,从而实现功耗的降低。采用这种方法,在超标量单线程处理器中,试运行典型程序,可以降低20~70%左右的功耗。

2低功耗及线程划分编译优化

2.1低功耗优化

    根据EU线程划分的低功耗调度,可由多个线程队列组成,将线程队列定义为,在EU中运行的被调度的多个线程进行有序的执行,只有在满足一定条件的基础上,才能够对线程进行降低频率执行。在这一过程中,线程执行降频因子是一个重要的参数,指的是在为了降低功耗对线程进行降频后,实际运行频率和正常运行频率之间的比值[3]。通过计算能够得出线程降频后运行中节省的能量,和正常运行中消耗的能量之间的比值。基于此,即可对应用程序采取低功耗优化之后,运行当中节省的总能耗进行计算。

2.2功耗优化线程划分算法

    在功耗优化算法中,按照计算代价和EU使用情况,对功耗优化调度、线程划分等进行计算。例如在Power Aware Partition算法中,在While循环的每一轮当中,对一个更高节点进行选择,或是在线程划分中对新的线程进行创建,或是在线程划分中存在的线程中加入更高节点,将没有分配但父节点已经分配的节点加入其中,同时对事件表进行调整。在事件表当中,各个元素都包括了事件的类型及时间,其中,事件类型代表线程的结束事件,事件时间则代表线程的开始事件。事件表是一个有序的事件表,按照一定的时间顺序发生,在相应算法当中,发挥着重要的作用。根据DDG及事件表当中线程的开始事件及结束事件,进行相应的低功耗优化,对能够降频运行的线程进行识别,同时对各个线程的线程调度、降频因子等进行计算。在实际应用当中,主要采用的算法包括了Fittest Thread算法、Test Gap算法等。

2.3低功耗线程调度及降频因子计算

    Low Power Sch算法的运行当中,根据事件表当中的顺序,对线程进行EU号的分配,并对各个EU线程运行队列进行建立。在调度表当中,完成除了Low Power Factor以外所有项目的填写。然后对各个线程的降频因子进行计算,在EU完成分配线程的运行之后,按照最后一个线程结束时间,以及整个应用程序结束时间只差,确定是否关闭[4]。在调度表当中,各个线程在相应的EU线程队列中,各占一项,每个项当中含有5个域,分别是指向队列下一个线程的指针、降频执行因子、正常结束时间、线程开始时间、线程号等。在实际运行当中,系统可根据调度表的安排加降频因子,对各个线程的应用进行调度。

结论:低功耗多线程编译的优化技术,是一种较为先进的技术,在低功耗研究方面,具有重要的意义和作用。通过多喜爱昵称微处理器体系结构,研究低功耗多线程编译的优化,采用相应结构平台支持主机端运行,网络设备专用处理器,对硬件支持多线程多现场结构进行应用。通过高度的集成化和多硬件现场的作用,实现线程切换之间的低功耗,从而提升低功耗的可靠性。

参考文献:

[1]高瑞明, 闫双平, 郭玉福. 数据共享交换平台性能优化分析与技术研究[J]. 电脑与信息技术, 2015, 23(3):37-39.

[2]金跃, 李春强, 尚云海,等. HL-TLS:支持热点的线程级猜测编译实现[J]. 计算机工程, 2015, 41(11):77-83.

[3]张海峰, 徐杭男, 杨伟锋. 一种融合USB—CDC与JNI技术的数据通信方式[J]. 单片机与嵌入式系统应用, 2017(2):39-42.

[4]李朋飞, 陈曙晖, 徐成成. 一种正则表达式编译器优化技术[J]. 计算机技术与发展, 2015(9):123-128.