异构处理器程序静态划分方法的研究与实现
作者单位:东北大学
学位级别:硕士
导师姓名:王翠荣
授予年度:2013年
学科分类:08[工学] 081201[工学-计算机系统结构] 0812[工学-计算机科学与技术(可授工学、理学学位)]
摘 要:异构多核处理器集成的处理核心类型的多样性,使该类型处理器很好的支持了其特殊的应用程序(如信号处理,图像处理等)的实时调度问题,在这种情况下,实时调度就成为了多核实时领域的主流研究方向之一。目前,基于异构多核处理器体系结构的调度问题仍然处于起步阶段,基于异构多核处理器的实时任务分配算法虽然已经取得了不错的成果,但该成果仍然是针对特定情况下的算法,并不能普遍应用与所有类型的任务集,由于目前处理器硬件体系结构的飞速发展,以及多核异构处理器系统在现实中的广泛应用的需要,研究在多资源的异构多核处理器系统上的任务分配算法已经刻不容缓,参照已有的实时任务调度算法,对给出的特定任务集进行实时调度并执行,让该任务集在异构多处理器系统下高效的执行,这一课题同样是目前异构多处理器领域中急需要解决的问题。本文主要研究了基于异构多核处理器上的静态划分调度算法,对异构多核处理器的体系结构进行了研究,对需要调度的任务的特征进行了提取,最终得出任务执行所需要的系统资源以及处理器核心所能提供的系统资源,并比较二者间的联系,通过相应的映射函数将二者映射到相同的欧氏空间中。然后在二者之间找加权欧氏距离最短的“任务—核心匹配对,使任务能和最佳适应的核心相互匹配,通过该“任务—核心匹配对来指导后面的具体调度。最后本文对该算法进行了实现,通过LLVM上的Clang前端编译器进行任务特征提取,通过中间文件进行“任务—核心匹配对进行暂存,通过OpenCL作为主控程序,最终对该算法的执行时间以及加速比与普通的调度策略进行对比,验证了本文调度算法的有效性。