论文部分内容阅读
相比于同构多核处理器,异构多核处理器上集成了不同粒度的处理器核心,使用结构复杂、功能强大、功耗高的大核挖掘串行程序的ILP,使用结构简单、占用面积小、功耗低的小核挖掘并行程序的TLP。实际上,当异构多核处理器的大小核配置与任务负载的阶段性行为特征相匹配时才能够有效地提高系统性能和降低功耗。动态异构多核处理器(Dynamic Heterogeneous Chip Multiprocessor, DHCMP)可以动态地将多个同构的基本核重构成不同粒度的逻辑核以满足不同任务的需求,提高系统性能和降低功耗。然而,DHCMP仅仅具有改变逻辑处理器核配置的可能。能否精确感知任务的行为特征和对资源的需求、有效地分配计算资源,能否确保任务执行的公平性,调度算法以及资源分配算法起着重要作用。本文的研究工作为旨在设计新的任务调度算法和资源分配算法以提高DHCMP整体性能、服务质量和能效。本文的研究工作和成果主要包括以下两个方面:1.设计了逻辑核资源分配算法PCPRA。在每个操作系统调度间隔内,资源分配器先根据任务的数目平均分配逻辑核,运行一定时钟周期后,根据任务的性能(反映任务对资源的需求)对其进行排序,找出对资源需求小的任务,减小所占用的逻辑核的粒度,并将从资源需求小的任务那里获得的空闲基本核分配给对资源需求高的任务,以增加该对资源需求高的任务占用的逻辑核的粒度。2.分析了在动态异构多核处理器上传统调度算法的不足。根据在DHCMP上任务调度公平性的新的解释,我们设计提出了性能感知的公平性调度算法PDP和PCFS调度算法。这两个调度算法可以动态地感知任务负载的性能,以衡量程序对资源的需求,从而分配相应的逻辑CPU时间,有效地改善了系统的服务质量、性能和能效。实验中,我们通过TFlex模拟器模拟仿真SCMP、ACMP、DHCMP三种不同的处理器平台。首先,在SCMP上分别运行CFS、DWRR、DP调度算法,在ACMP上运行ADWRR调度算法,在DHCMP(采用PERA资源分配算法)上运行DP、CFS、EDP、PDP、PCFS调度算法。实验结果表明,PDP、PCFS调度算法在任务调度公平性、系统性能和能效上占绝对优势。然后,我们实现了PCPRA/PCFS组合,该组合在系统性能上明显优于PERA/PCFS组合,在其他方面也不逊于PERA/PCFS组合,说明PCPRA资源分配算法优于PERA资源分配算法。