片上多处理器系统多线程同时运行的优化方法技术方案

技术编号:15638753 阅读:85 留言:0更新日期:2017-06-15 19:13
本发明专利技术公开了片上多处理器系统多线程同时运行的优化方法,该方法包括获取片上多处理器系统散热设计功耗所在的动态电压频率缩放等级;当散热设计功耗大于其所在动态电压频率缩放等级的最小功率时,获取片上多处理器系统当前尝试多线程同时运行的频率值;计算当前尝试多线程同时运行的频率值与散热设计功耗之间的差异;当差异大于预设精度时,采用当前尝试多线程同时运行的频率值与预设步长的累计值更新当前尝试多线程同时运行的频率值;当差异小于等于预设精度时,输出当前尝试多线程同时运行的频率值作为片上多处理器系统多线程同时运行的频率。

【技术实现步骤摘要】
片上多处理器系统多线程同时运行的优化方法
本专利技术涉及多处理器
,具体涉及片上多处理器系统多线程同时运行的优化方法。
技术介绍
随着计算机技术的发展,CMP(片上多处理器)凭借其强大的并行处理能力,逐渐成为主流,而CMP的并行处理能力,也随着集成核心数量的增加而逐渐提高。然而,核心数量的增加也带来了问题:假如同时激活CMP的所有核心,可能会使CMP系统的整体功耗超过TDP(散热设计功耗),此时系统的发热量,已经超出散热系统可以承载的范围,若不进行冷却,温度会进一步升高,对CMP造成损害。为了提高CMP内部程序的响应速度,有研究者提出了短时sprinting(多线程同时运行)方案和sprint-and-rest(这是一种周期性的sprinting模式,假如sprinting阶段,系统以超过TDP的状态运行,那么在温度到达系统能够容忍的上限后,便转为冷却状态,待冷却一定时间后,又重复之前的sprinting过程)方案,短时sprinting这种模式根据sprinting频率的不同,运算性能会优于或者劣于单核/单线程模式。针对sprint-and-rest,采用4核1.6G的sprinting模式与4核3.2G的sprinting模式进行分析,发现1.6G的表现优于单线程,而3.2G的表现弱于单线程。所以,对于sprint-and-rest模式,并不是sprinting频率越高越好,较低的频率配合较长的时间反而可以有更优秀的性能。
技术实现思路
针对现有技术中的上述不足,本专利技术提供的片上多处理器系统多线程同时运行的优化方法通过获取的最佳运行频率能够使片上多处理器拥有持续强大的并行处理能力。为了达到上述专利技术目的,本专利技术采用的技术方案为:提供一种片上多处理器系统多线程同时运行的优化方法,其包括以下步骤:获取片上多处理器系统散热设计功耗所在的动态电压频率缩放等级;当散热设计功耗大于其所在动态电压频率缩放等级的最小功率时,获取片上多处理器系统当前尝试多线程同时运行的频率值;计算当前尝试多线程同时运行的频率值与散热设计功耗之间的差异;当差异大于预设精度时,采用当前尝试多线程同时运行的频率值与预设步长的累计值更新当前尝试多线程同时运行的频率值;当差异小于等于预设精度时,输出当前尝试多线程同时运行的频率值作为片上多处理器系统多线程同时运行的频率。本专利技术的有益效果为:采用本方案的方法能够在预设精度下,准确获取CMP的所有核心长时间拥有强大的并行处理能力的最佳频率,CMP的所有核心在最佳频率下运行时,其温度不会超过所设定的上限温度,整个系统可以持续不断地运行,具有最佳的每秒执行指令数。附图说明图1为片上多处理器系统多线程同时运行的优化方法一个实施例的流程图。具体实施方式下面对本专利技术的具体实施方式进行描述,以便于本
的技术人员理解本专利技术,但应该清楚,本专利技术不限于具体实施方式的范围,对本
的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本专利技术的精神和范围内,这些变化是显而易见的,一切利用本专利技术构思的专利技术创造均在保护之列。图1示出了片上多处理器系统多线程同时运行的优化方法一个实施例的流程图。如图1所示,该优化方法100包括步骤101至步骤105。在步骤101中,获取片上多处理器系统散热设计功耗所在的动态电压频率缩放等级;在获取之前,首先需要输入预先设定的动态电压频率缩放等级,并将搜索的初始等级设为1。在本专利技术的一个实施例中,获取片上多处理器系统散热设计功耗所在的动态电压频率缩放等级进一步包括:获取预先设定的所有动态电压频率缩放等级;判断当前动态电压频率缩放等级的功率是否大于等于散热设计功耗:若是,则片上多处理器系统的散热设计功耗位于当前动态电压频率缩放等级(DVFS等级);否则,判断当前动态电压频率缩放等级的下一个动态电压频率缩放等级与散热设计功耗的大小关系。实施时,本方案优选当前动态电压频率缩放等级的功率为当前动态电压频率缩放等级的平均功率。在步骤102中,当散热设计功耗大于其所在动态电压频率缩放等级的最小功率时,获取片上多处理器系统当前尝试多线程同时运行的频率值。其中当前尝试多线程同时运行的频率值的初始值可以设置为散热设计功耗所在的动态电压频率缩放等级内的最小功率,也可以设置为在该等级下的最小功率加一固定频率步长。当散热设计功耗大于其所在动态电压频率缩放等级的最小功率时,则表明片上多处理器系统在动态电压频率缩放等级内最大功率与最小功率区间内能够找到使片上多处理器拥有持续强大的并行处理能力的最佳功率。在步骤103中,计算当前尝试多线程同时运行的频率值与散热设计功耗之间的差异。在步骤104中,当差异大于预设精度时,采用当前尝试多线程同时运行的频率值与预设步长的累计值更新当前尝试多线程同时运行的频率值。在本专利技术的一个实施例中,更新当前尝试多线程同时运行的频率值时,还包括:记录当前尝试多线程同时运行时的差异和上一次尝试多线程同时运行时的差异;当当前尝试多线程同时运行时的差异与上一次尝试多线程同时运行时的差异的正负符号互异(其中一个为正数,另一个为负数)时,则表明不能寻找到使片上多处理器拥有持续强大的并行处理能力的最佳功率。为了规避这种情况,本方案将当前步长按预设的比例缩小,以减小搜索范围,提高搜索精度,从而逼近要寻找的最佳功率。其中,预设步长的初始值为一个大于零的常数。实施时,本方案优选当散热设计功耗小于等于其所在动态电压频率缩放等级的最小功率时,输出散热设计功耗所在动态电压频率缩放等级的上一个动态电压频率缩放等级的最高频率作为片上多处理器系统多线程同时运行的频率。在步骤105中,当差异小于等于预设精度时,输出当前尝试多线程同时运行的频率值作为片上多处理器系统多线程同时运行的频率。实施例下面使用sniper,hotspot以及mcpat作为联合仿真平台,在多种电压/频率下进行实验:实验设置的上限温度为80摄氏度,下限温度为50摄氏度,TDP值约为42W。CMP在sprinting模式下的温度到达上限后,便切换为rest模式,待温度冷却至下限温度后,再次切换为sprinting模式。在如表1所示的实验条件进行实验,实验统计数据见表2,其中,Inf表示当前电压/频率下,CMP可以持续运行。表2前五行是本方案预先设定的DVFS等级下运行得到的统计数据,最后一行是在寻找到的最佳的频率或电压情况下,运行的统计数据。表1实验条件参数配置核心数量64一级指令缓存(私有)64KB一级数据缓存(私有)64KB二级缓存(私有)64KB末级缓存(共享)16MB互联方式NoC工艺22nm表2实验统计数据可以看出,在最佳频率下,CMP可以持续运行,且此时每秒执行指令数优于其余DVFS等级下的每秒执行指令数。本文档来自技高网
...
片上多处理器系统多线程同时运行的优化方法

【技术保护点】
片上多处理器系统多线程同时运行的优化方法,其特征在于,包括以下步骤:获取片上多处理器系统散热设计功耗所在的动态电压频率缩放等级;当散热设计功耗大于其所在动态电压频率缩放等级的最小功率时,获取片上多处理器系统当前尝试多线程同时运行的频率值;计算当前尝试多线程同时运行的频率值与散热设计功耗之间的差异;当所述差异大于预设精度时,采用当前尝试多线程同时运行的频率值与预设步长的累计值更新当前尝试多线程同时运行的频率值;当所述差异小于等于预设精度时,输出当前尝试多线程同时运行的频率值作为片上多处理器系统多线程同时运行的频率。

【技术特征摘要】
1.片上多处理器系统多线程同时运行的优化方法,其特征在于,包括以下步骤:获取片上多处理器系统散热设计功耗所在的动态电压频率缩放等级;当散热设计功耗大于其所在动态电压频率缩放等级的最小功率时,获取片上多处理器系统当前尝试多线程同时运行的频率值;计算当前尝试多线程同时运行的频率值与散热设计功耗之间的差异;当所述差异大于预设精度时,采用当前尝试多线程同时运行的频率值与预设步长的累计值更新当前尝试多线程同时运行的频率值;当所述差异小于等于预设精度时,输出当前尝试多线程同时运行的频率值作为片上多处理器系统多线程同时运行的频率。2.根据权利1所述的片上多处理器系统多线程同时运行的优化方法,其特征在于,更新所述当前尝试多线程同时运行的频率值时,还包括:记录当前尝试多线程同时运行时的差异和上一次尝试多线程同时运行时的差异;当当前尝试多线程同时运行时的差异与上一次尝试多线程同时运行时的差异的正负符号互异时,将当前步长按预设的...

【专利技术属性】
技术研发人员:陈哲牟江王坚李桓李玉柏
申请(专利权)人:电子科技大学
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1