论文部分内容阅读
随着多核处理器的产生和应用,如何提升其运行效率和并行性能倍受国内外各大硬件厂商和专家学者的关注。系统性能并不能仅仅依靠硬件平台的技术进步而提升,硬件平台还需要与其搭配的优化软件才能充分发挥出技术进步带来的优良性能。因此,多核平台上的任务调度问题已经成为高性能、高并行处理器研究领域的热点问题之一。鉴于多核处理器平台的优良性能和发展前景,为进一步提升其实际应用性能,本文对异构平台上的依赖任务调度算法进行研究,设计一种适合其硬件平台且性能优良的依赖任务调度算法,同时该算法还具备较好的可扩展性和稳定性,能够充分发挥出异构并行系统的性能优势并缩短全部任务执行完成时间,提升多核系统的运行效率。本文通过对多核处理器任务调度及其现有算法进行分析,针对现有多核系统任务调度算法存在的不足,借鉴粒子群优化算法的思想,并对其改进优化,进而提出一种运行于异构多核处理器平台上的依赖任务调度算法。该算法采用粒子群算法随机并行搜索的思想,在粒子空间内搜索任务调度问题的最佳方案,并采用混沌理论进行粒子群初始化和局部搜索,改善了算法的局部搜索性能。根据异构多核系统依赖任务调度的特点,设计新的粒子编码、解码方案和更新准则,按照双启发式优先级规则将不可行调度解转换为较优的可行解,同时融入自适应学习策略的多邻域搜索进一步提升算法的搜索速度和局部细搜索精度。该算法能够在短时间内找到最优的任务调度方案,减少全部任务执行完成时间,提升异构多核处理器的并行性能。为了证明该算法在异构系统依赖任务调度问题上的适用性和高效性,实验采用随机生成三类具有不同特点的任务图集合和不同的硬件条件即处理器内核个数作为算法测试输入,并在Matlab平台编程实现该算法,对算法的搜索速度和收敛性能进行测试验证。实验结果表明:与现有算法相比,新算法总能找到异构系统下依赖任务调度难题的最优或次优解,即得到全部任务执行完成时间最短,具有较好的稳定性和可扩展性,同时为相关研究提供了很好的借鉴意义。