论文部分内容阅读
随着科学技术的不断发展,为了适应用户对系统性能的需求,处理器由单核发展到双核,进而发展到多核。然而随着处理器内核数目的增加和内部集成度的提升,处理器内部功耗和发热量急剧增加。处理器内部的高温和强烈的温度变化,不仅增大了系统的冷却成本,对系统的稳定性和可靠性也产生了巨大影响,严重制约着多核系统的应用和发展。因此在满足应用对实时系统性能要求的前提下,如何执行任务的调度,从而提高实时系统的稳定性成为当前亟需解决的问题。目前的研究主要从硬件层面和软件层面来解决以上问题,而无论是硬件技术方向的降频,还是软件技术方向的基于温度感知的任务调度方法等的研究,都单一着眼于降低系统的最高温度,这种方式有时是以牺牲系统性能为代价的。而本文通过对电迁移(Electro migration, EM),应力迁移(Stress migration, SM),与时间相关的电介质击穿(Time-dependent dielectric breakdown, TDDB)和热循环(Thermal cycling, TC)这四种集成电路失效机制的分析发现,前三种因素主要受高温影响,而TC除了受系统高温影响的同时,热循环过程中的振幅和频率的变化对系统平均失效时间(Mean-Time To Failure, MTFF)也有着很大的影响,而系统平均失效时间是衡量系统稳定性的重要指标。本文通过对初始损耗相同的同构多核系统的生命周期分析,发现任务负载平衡将保证系统MTTF最优。然而在异构多核系统中,处理器核心的初始损耗与结构各不相同,因此本文提出一种基于损耗补偿的温度感知调度算法实现任务负载平衡,以达到系统MTTF最优的效果。该算法根据多核实时系统中各个核心自身损耗状况进行任务的分配和调度,当核心的损耗主要基于热循环时,在满足任务截止期的前提下,运用DVFS (Dynamic voltage and frequency scaling)技术,通过调整处理器执行的频率,使任务按照其平均能耗非递增排序执行,避免出现热循环过程;当核心损耗主要是基于高温时,使任务按照其平均能耗大小进行交叉排序执行,避免出现高温过程,在实时任务的分配和调度过程中通过平衡热循环和高温对各个核心损耗的影响,从而实现实时系统MTTF的优化。论文最后通过大量模拟实验,与随机调度,温度感知调度等算法相比较,证明了该算法效果显著,实现了系统MTTF的优化并提高了系统稳定性。