论文部分内容阅读
异构多核处理器的资源分配问题是一系列的决策问题且较为复杂,为了在给定的预算功率约束下实现最佳的性能,需要对系统的各种资源进行有效地分配。运行时的应用程序资源需求与分配间的任何误匹配都会导致次优的EDP(Energ y-Delay-Product,EDP)。针对系统资源的动态需求与运行时分配的不匹配问题,现有的工作也存在不同的优化技术。由于非叠加效应,系统运行时选择多目标进行优化较为复杂。基于此,本文主要对运行时的异构多核处理器资源分配及多智能体协同优化进行研究,主要研究工作如下:1.在算法的选取上,本文探索和评估了TD方法、Sarsa算法和Q-learning三种强化学习技术,比较了三种方法的优缺点,并结合本文所研究的问题,最终选取了Q-learning算法来对该问题进行优化。2.针对核与非核区的DVFS控制器,将核的DVFS控制器状态进行量化,并选取EDP作为奖励函数;而非核区,由于其性能主要受频率影响,故而对非核区建立了类似核的DVFS控制器,并对其进行量化。针对末级缓存的动态分配,由于其分配方式存在大量的可能性,本文通过在线强化学习对其进行了高效地分配。3.针对多核处理器的整体资源分配,由于MLM(Machine Learned Machines,MLM)模型并不能保证系统总是达到全局最优,因此,本文对其进行探索改进,建立JAMCL模型。JAMCL模型能使控制器之间相互协调,相互共享信息,实现更有效的重新配置,同时,多智能之间能协调联合地进行高效搜索,从而确保系统达到全局最优。实验中,本文通过Sniper模拟仿真器对基于ANN、XChange、MLM1、MLM2、MLM3、CMLM及JAMCL资源分配优化模型进行了验证,实验结果显示,系统EDP经过协同优化(MLM、CMLM、JAMCL)的结果比所有单独应用优化技术都要低得多。就平均而言,JAMCL除了个别少数(Mix19)的工作混合负载变现较差外,绝大部分的混合工作负载表现要优于XChange,同时在EDP改善率,吞吐量与公平性下降率三个度量标准上表现为最优;从多线程工作负载角度来看,JAMCL协同优化也优于XChange,表现出15.6%的EDP改善率,6.5%的吞吐量下降率,而XChange变现出非常高的(19.5%)吞吐量下降率;就存储时间与搜索时间而言,本文分别对基于ANN、XChange、MLM、CMLM、JAMCL模型的存储开销和搜索时间进行分析计算,JAMCL的存储开销(1.76KB)最小,搜索时间(<2000 cycles)较短,但依旧远小于ANN(25000 cycles)和XChange(6000 cycles)的搜索时间。