一种GPU-CPU协同节能方法技术

技术编号:24352655 阅读:28 留言:0更新日期:2020-06-03 01:54
本发明专利技术公开了一种GPU‑CPU协同节能方法。包括下述步骤:a.获取能耗及性能数据:利用CPU功耗、性能模型,GPU功耗、性能模型分别获取各程序的性能、功耗数据;b.判定程序数量:程序数量为1时:通过判断综合判断时间和性能,以决定将该程序分配到恰当的PU上进行处理;程序数量大于1时:判断所有程序在GPU上的总执行时间是否小于在CPU上执行单个程序的最小时间,如小于,将所有程序分配到GPU上执行;如不小于,按步骤c的整数规划进行分配处理;c.整数规划:构建以性能和PU数量为约束条件、以能耗最小为优化目标函数的PCGA分配模型,得到程序在对应PU上的执行序列。本发明专利技术能够在减少能耗的情况下获得了较多的性能提升,达到了追求性能和追求能耗之间的平衡。

A gpu-cpu cooperative energy saving method

【技术实现步骤摘要】
一种GPU-CPU协同节能方法
本专利技术涉及异构环境高性能计算机
,特别是一种GPU-CPU协同节能方法。
技术介绍
为了兼顾执行多种任务,多级缓存和复杂的控制逻辑被用于通用处理器CPU中以进行逻辑判断、分支预测、中断处理。为了获得更高的并行性,大量的并行执行单元被集成到GPU中。在持续地提高处理器性能的情况下,多核技术被用于CPU中,而与生俱来的多核处理器GPU则被应用于通用计算中。目前,在通用计算领域,CPU和GPU成为两类重要的多核处理器。如何合理地利用CPU和GPU的多核处理资源成为当下研究的重点,大量文献也对它们的优劣进行了对比和探讨。然而,计算机架构师、程序员和研究人员对计算性能的追求是无止境的,目前研究已从CPU与GPU孰优孰劣的争论中转向了利用异构体系结构中的CPUandGPU的计算资源协同提高处理性能。其中,计算资源协同是指智能地结合两者的特征以获得更高的计算能力,通过避免和减少CPU和GPU的空闲时间将每一个程序合理地分配到异构体系结构中的CPU或GPU上以获得优于单个处理资源的性能。大多数学者将这种CPU和GPU计算资源的协同处理称为异构计算(HeterogeneousComputing,HC);由HC组成的系统称为异构计算系统(HeterogeneousComputingSystem,HCS)。在HC中,为了描述方便而将CPU和GPU统称为处理单元(ProcessingUnit,PU)。HC已经引起了大家的重视,例如在TOP500和Green500中,大部分超级计算机都具有CPU和GPU。目前,对于HC的研究主要集中在两个方面:一个是侧重于提高系统的性能,另一个则是侧重于它们的能耗问题。在提高性能研究方面:Augonnet,Cédric等人提出了一种运行时的统一执行模型——StarPU;针对单一任务在不同PUs下的分配问题,StarPU有五种调度策略可供选择用于分配任务以提供更好的性能。这五种策略分别是:支持优先级的贪婪策略,不支持优先级的贪婪策略,基于WorkStealing的贪婪策略,处理速度随机加权和异构最早完成时间策略。与Augonnet,Cédric等人一样,Chi-KeungLuk,SunpyoHong,HyesoonKim针对单一程序在CPU和GPU上的分配问题提出了用于在HCS中映射计算量的Qilin框架。它提供了一个编写并行程序的API并且在训练阶段为每个PU创建性能模型,利用该性能模型为不同的输入计算优化的工作负载分配;然后进行动态编译以实例化所分配负载并将实例化后的程序在对应的PU上运行。Belviranli,MehmetE.,LaxmiN.Bhuyan,RajivGupta提出了一种用于HCS上的循环迭代的动态负载平衡技术。他们的方法分两个阶段,在第一阶段中,通过对PU分配不同大小的任务进行实验用于估计PU的相对性能。在第二阶段中,使用自调度算法并依据第一阶段获得的相对性能值为每个PU分配负载。该算法动态调整块大小以及寻找正确的块大小以减少利用率不足和负载非均衡,从而产生最短的执行时间。Grewe,Dominik,MichaelFPO’Boyle基于编译器分析程序的结构提出了利用机器学习的方式对一个OpenCL程序预测并分配优化的处理资源;通过编译器Clang获得程序特征然后通过PCA筛选特征并将筛选后特征输入到由SVM组成两阶段层次分类的中以获得最终的调度结果。MuriloBoratto,PedroAlonso,CarlaRamiro,MarcosBarreto在CPU和GPU异构系统上使用静态调度来划分矩阵计算的工作负载以解决地貌属性表示的问题。Bernabé,Gregorio,JavierCuenca,DomingoGiménez针对加速三维快速小波变换提出了一种负载分配方法。该方法首先得到CPU和GPU的性能,然后依据它们的性能优劣按比例将工作负载分配给它们。Jiménez,VíctorJ等人基于性能历史数据提出了一种对多程序的性能调度方法。他们对比了First-free,First-Come-First-Served等方法,并通过实验得出了其提出的多程序的性能调度方法具有较高的性能。在能耗问题研究方面:LiJunke,GuoBing等人提出了一种利用BP神经网络调节DVFS的GPU节能方法。Paul,Indrani等人依靠DVFS技术对CPU和GPU的频率和电压进行协调用于实现CPU-GPU系统的能耗管理。但上述的研究工作主要集中在DVFS技术上,而未考虑在异构系统上任务调度对功耗的影响。Liu,Wenjie等人基于瀑布模型提出了一种提高大规模异构集群(包含几个CPU-GPU节点)能效的技术。这种技术对每个节点可能存在的忙碌,空闲和睡眠三种能耗状态进行变换。例如,在一个特定时间点的负载减少了,处于睡眠状态的节点就会被关闭而在另一个时间点负载增加了,处于睡眠状态的节点就会被唤醒。除了在利用三种状态进行节能外,还利用了在可用节点上进行任务调度用于提高性能以及调整CPU的电压以节约能耗。Machovec,Dylan等人首先利用Khemka,Bhavesh等人提出的时间上的单调递减以及表达任务紧急性和重要性的效用函数表达系统的性能,结合对计算矩阵和平均功耗矩阵的时间估计等信息上建立了单位能耗效能的启发式方法对程序进行调度。他们设计、分析和对比了四个效用感知的启发式方法,三个基于FCFS方法以及一个随机方法。同时,他们也提出了一个用来限制每个计算资源的最大能耗消耗的能耗过滤方法。Oxley,MarkA等人研究了在异构集群系统环境下,感知多个相互独立任务的能耗并对资源进行静态分配问题。其定义了能耗鲁棒性以及结束时间的鲁棒性并通过概率密度函数对程序执行的时间进行建模。利用上述的信息,其设计并分析了几种能耗约束和性能约束下的能耗感知资源分配的方法。而以上的方法均是在集群环境中进行。Liu,Qiang,WayneLuk提出了对高性能的Linpack程序在CPU,GPU,FPGA中分配的方法。该方法通过预测获得单个程序的性能参数以及通过预先运行的方式获得每个处理资源的参数,然后利用线性规划分配每个处理资源的负载以达到节能的目的。在获得每个PU的分配到的负载比例后,手动改写目标PU的代码。Ma,Kai基于负载的特性提出了一种将单个程序负载分配到CPU和GPU中用以负载均衡和减少空闲时间的HCS能耗管理框架。该方法分别在CPU和GPU上调整频率和电压以减少能耗。Barik,Rajkishore等人提出了一种对单个程序在CPU和GPU上负载划分的方法,在此基础上执行能耗感知调度方法用于减少能耗。其利用多项式逼近的方法获得程序的功耗;通过R.Kaleem,R.Barik,T.Shpeisman,B.Lewis,C.Hu,andK.Pingali提出的分析方法获得了程序的特征及运行时间的长短(例如,计算密集型或访存密集型,运行时间长或短)等信息对程序进行调本文档来自技高网...

【技术保护点】
1.一种GPU-CPU协同节能方法,其特征在于:包括下述步骤:/na.获取能耗及性能数据/n利用CPU功耗模型、CPU性能模型,GPU功耗模型、GPU性能模型分别获取各个程序的性能数据和功耗数据;/nb.判定程序的数量/n当程序数量为1时:/n通过判断综合判断时间和性能,以决定将该程序分配到恰当的PU上进行处理;/n当程序数量大于1时:/n判断所有程序在GPU上的总执行时间是否小于在CPU上执行单个程序的最小时间,如果小于,将所有程序分配到GPU上执行;如果不小于,按步骤c的整数规划进行分配处理;/nc.整数规划/n构建以性能和PU数量为约束条件、以能耗最小为优化目标函数的PCGA分配模型,得到程序在对应PU上的执行序列。/n

【技术特征摘要】
1.一种GPU-CPU协同节能方法,其特征在于:包括下述步骤:
a.获取能耗及性能数据
利用CPU功耗模型、CPU性能模型,GPU功耗模型、GPU性能模型分别获取各个程序的性能数据和功耗数据;
b.判定程序的数量
当程序数量为1时:
通过判断综合判断时间和性能,以决定将该程序分配到恰当的PU上进行处理;
当程序数量大于1时:
判断所有程序在GPU上的总执行时间是否小于在CPU上执行单个程序的最小时间,如果小于,将所有程序分配到GPU上执行;如果不小于,按步骤c的整数规划进行分配处理;
c.整数规划
构建以性能和PU数量为约束条件、以能耗最小为优化目标函数的PCGA分配模型,得到程序在对应PU上的执行序列。


2.根据权利要求1所述的GPU-CPU协同节能方法,其特征在于:步骤c中,所述...

【专利技术属性】
技术研发人员:李君科刘凯李明江郭勇
申请(专利权)人:黔南民族师范学院
类型:发明
国别省市:贵州;52

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

1