论文部分内容阅读
在处理器设计领域,功耗目前成为制约CPU性能提升的主要因素之一。处理器的功耗不仅制约着CPU的主频的进一步提高,而且很大程度上影响着芯片的封装、测试的成本以及系统可靠性。对于CPU设计者们来说,在追求较高的性能的同时,CPU需要尽量消耗较少的能耗,即追求更高的性能功耗比。如何在性能和功耗上找到最好的平衡点,这才是设计者们真正需要考虑的问题。异构多核处理器指的是在一个芯片内同时集成几个性能和功能不相同的核。这些核为用户提供不同的计算能力,拥有不同的功耗。与同构多核处理器相比,异构多核处理器由于其更高的性能功耗比近年来成为了学术研究的热点。然而,作为新兴的体系结构,目前现有的操作系统调度算法不支持异构多核处理器。要想发挥异构多核处理器独特的性能功耗优势,传统的任务调度算法显然不能满足需求,人们必须设计一种适合该平台的任务调度算法。
本文总结了现有操作系统的调度算法以及目前学术界提出的几种异构多核平台调度算法,并分析了几种算法的优缺点。针对异构多核平台的特点,本文提出了一种基于用户引导的异构多核调度算法UGHS。该算法与其他任务调度算法相比能够充分发挥异构多核平台性能功耗优势,算法的开销小,可扩展性好,并在同种性能的核内保证了任务运行的公平性。本文在Linux实现了UGHS算法,并在M5模拟器上对该算法的性能进行了评估。结果表明,使用UGHS算法的异构平台相比同构平台的EDP值平均有25.6%的降低。同时,在同一异构多核平台下,相比于原有Linux的调度算法,UGHS的EDP值平均降低了23%。