节点文献

异构多核嵌入式系统的性能与能量优化

Performance and Power Optimization in Heterogeneous Multi-core Embedded Systems

【作者】 黄晶

【导师】 李仁发;

【作者基本信息】 湖南大学 , 计算机科学与技术, 2018, 博士

【摘要】 异构多核嵌入式系统已广泛应用于各个领域,并随着信息技术的发展对人类生活的影响越来越大,如汽车电子系统、航空电子系统,以及目前热点关注的无人驾驶车、智能机器人等都属于这个范畴。系统功能数量和信息量的日益增加以及功能的复杂化,导致信息处理的不平衡与能量消耗的不合理,从而影响系统的性能和能量有效性,同时也给异构多核嵌入式的设计带来了挑战。如何提高异构多核嵌入式系统的性能与能量有效性已成为嵌入式系统发展重点考虑问题之一。本文针对异构多核体系结构的嵌入式系统的性能与能量优化进行研究,考虑一个通用应用场景:将普通任务分配到一个异构多核的嵌入式系统上,系统中的每个核已经预先加载了一部分到达率、大小以及紧急程度各异的专属任务。系统中的每个核具有不同运行速度、不同功率、不同空闲时频率。为了保证专属任务可以及时执行,同时提高系统资源的利用率,定义了“专属任务无优先级”,“专属任务有优先级不抢占”,和“专属任务优先级抢占”三种调度策略。每个核可以根据专属任务的紧急程度任意选择其中一个作为调度策略。由于在大部分实际应用中任务的到达时间、任务的大小以及对应的响应时间具有一定的随机性,在以上应用场景的基础上本文用排队理论对系统进行建模,本文的研究内容与贡献主要包括以下几个方面:一、定频模式下能量受限的性能优化研究。频繁地调节处理器的频率会影响处理器的寿命,在某些计算系统里不建议采用这样方式节能。因此,我们针对处理器核工作与空闲时频率不变的工作模式,研究如何在保证能量不超过给定额度下系统性能最优的问题。我们假设处理器频率可连续取值,把研究问题建模成一个多变量、多约束的优化问题,并提出了一个可取得全局最优性能的优化算法。通过所提出算法,我们分析了系统性能与任务到达规律、系统任务分配、处理器属性以及处理器上任务的调度策略之间的关系。二、变频模式下性能受限的能量优化研究。降低处理器空闲时频率是一种通用的节能方式,然而在嵌入式系统里由于有些任务具有实时性,使得处理核空闲时也不应处于完全休眠状态。我们针对处理器工作与空闲时频率不同的工作模式,研究如何在保证系统性能的前提下能量使用尽量少的问题。我们依然把问题建模成一个多变量、多约束的优化问题,并提出了一个可取得全局最优平均功率的优化算法。当问题由于各节点上专属任务的差异性、核的异构性太强而难以获得最优解时,提出用最优解数据作为训练数据,用数据拟合的方法训练出核速度与任务量的关系以辅助问题的求解。通过数值实验,我们分析了不同参数对系统能量优化的影响,也分析了能量优化所取得的效果。最后,我们在实际多核嵌入式系统平台上验证了所得到的理论数据与实际运行效果基本一致,即理论与实际是相符合的。三、性能与能量联合优化研究。在嵌入式系统中,性能与能量都非常重要,但彼此间也具有矛盾性。“固定性能优化能量”与“固定能量优化性能”通常被视为两个独立的问题求解,很少有同一个算法可以解决这两个问题。因此,我们对性能与能量的联合优化问题进行研究。根据实际情况把处理器核可调频率看成一个离散有限的集合,所建立的问题模型既是一个多变量、多约束的优化问题,同时也是一个复杂的组合问题。在问题的解决过程中,针对由于异构性很强而导致问题难以解决时,巧妙的利用KKT理论把所求问题递归转换为子问题,提出了一个给定核速度前提下的最优负载算法。该算法可以获得最优的性能,同时保障专属任务的平均响应时间不超过期望预定的值。然后在最优负载均衡算法的基础上又根据性能与功率之间的比率提出了一个简单、高效的性能与能量联合优化算法。这个算法既可以解决固定性能优化能量的问题,也可以解决固定能量性能优化的问题。所提的方法简单、直观但解的质量与最优解非常接近。

【Abstract】 Heterogeneous multi-core embedded systems have been widely applied in many fields,and their impacts on the human life keep growing.The increasing numbers of function,information and complicated functionality have illuminated the information unbalancing problem in various domains.Such unbalancing problems can gravely affect system performance and power consumption,which are significant to heterogeneous multi-core systems.How to improve performance and reduce power for embedded multi-core systems has attracted considerable research attention.In this thesis we focus on the system performance and power optimization for heterogeneous multi-core embedded systems.In order to study our problem,a common application scene that assigning a stream of general tasks into a heterogeneous multi-core system is considered.In the considered system,each core has preloaded a stream of dedicated tasks,and equips with different operation frequencies and power consumption.The stream of dedicated tasks preloaded on different core has various average arrival rate,average task size,and urgent level.To ensure the dedicated tasks can be executed in a manner of timing and improve the system utilization,three scheduling strategies,which are dedicated tasks without priority,prioritized dedicated tasks without preemption,and prioritized dedicated tasks with preemption,are provided.Each core can employ any one of the three strategies according to the urgency level of the dedicated tasks preloaded on it.Since the arrival rate,task size and corresponding response time of tasks have certain randomness,the system is modeled with queue theory.The major work and contributions of this paper are as follows.The power-constrained performance optimization under fixed frequency.The frequent processor frequency adjustment will shorten the life of processor.In many costsensitive systems the frequency adjustment is not advised to be employed.Therefore,we study the problem of power-constrained performance optimization under the case that the frequency of each core always keeps stable.We treat the frequency of each core as a continuous variable,and model the problem as a multi-variable and multi-constraint problem.A performance optimization algorithm is proposed that can obtain the global optimal performance for general tasks.Based on the proposed algorithm,the relationships between system performance and tasks arrival rate,tasks allocation,properties of core,and the tasks scheduling strategy are analyzed.The performance-constrained power optimization under up-and-down frequency.When the core is in idle state,reducing work frequency of core is a commonly used energy-saving technology.In embedded systems,some computing nodes are employed to perform urgent applications,this implies that these nodes cannot sleep completely even if the CPUs are idle.Therefore,we study the problem of performance-constraint power optimization under the case that the frequency is not the same when the CPU is in busy state and idle state.We model the problem also as a multi-variable and multi-constraint problem,and propose a power optimization algorithm that can obtain the optimal system power.Furthermore,when the problem is difficult to obtain the optimal solution because of the excessive imbalance among the number,size,and performance constraints of dedicated tasks assigned,a data fitting method is employed to assist to resolve the problem.Based on experiments,we analyze the impacts of different parameters on the system power optimization,and effectiveness of the power optimization.Finally,the consistency between theory solution and practical solution is verified on a practical multi-core embedded platform.Joint performance and power optimization.On embedded systems,both performance optimization and power optimization are of great importance.There also exists contradiction between them.The two problems,which are maximizing performance with limited power,and minimizing power while satisfying given performance,are usually studied separately.Therefore,we study the problem of performance and power joint optimization.According to the practical core frequency,the adjustable frequencies of processor are modeled as a set of discrete speeds.The problem of concern is not only a multi-variable and multi-constraint problem,but also a combinatorial optimization problem.In this investigation,we propose a novel load-balancing algorithm to obtain the optimal performance of general tasks while satisfying the performance requirements of dedicated tasks.The proposed load-balancing algorithm skillfully utilizes Karush-Kuhn-Tunker theory to solve performance optimization problem.It can also recursively solve the problem by transforming the problem into its sub-problem when the excessive imbalance among the number,size,and performance constraints of dedicated tasks assigned to each core causes the problem to became difficult to solve.On the basis of the above algorithm,we propose a joint performance and power optimization algorithm based on the ratio between performance and power.The proposed method of this study can not only solve the problem of optimizing power under given performance,but also solve the problem of optimizing performance under given power.Finally,extensive simulations are performed to verify our analytical results.

  • 【网络出版投稿人】 湖南大学
  • 【网络出版年期】2018年 06期
节点文献中: 

本文链接的文献网络图示:

本文的引文网络