学位论文简介
新型体系结构计算系统是由高性能通用处理器和多种专用加速器构成的高度可扩展的异构计算系统。受体系结构复杂性影响,计算程序在计算系统上开发和移植过程中面临更复杂的性能优化需求。计算任务是计算程序的执行者,其性能直接影响软件的整体效率。任务调度是优化计算任务执行效率的主要手段。然而在新型体系结构计算系统中计算任务的调度优化面临三大挑战:随机的动态任务与复杂的体系结构难以实现最优匹配;遗留代码中可优化的数学运算结构单元难以被识别;以及计算任务算子难以自适应匹配最优算子实现。本文的研究目标是通过优化多任务的并行调度和单任务的算子调度来解决上述三个挑战。为此开展了如下三个研究工作:
(1)设计了面向新型体系结构的动态任务并行调度框架。该框架包含统一线程管理模块、自适应批流调度模块和任务窃取负载均衡模块。统一线程管理模块通过线程管理和基于芯粒的线程核簇绑定策略,优化了任务线程的执行过程。自适应批流调度模块利用图卷积网络模型实现批流调度方式的自动决策,为对动态任务并行选择最合适的调度方式,提升了程序执行性能。任务窃取负载均衡模块采用基于芯粒的就近任务窃取方法,优化了动态任务并行的工作负载均衡。实验结果表明,该框架优于业内其他主流并行解决方案。
(2)提出面向计算任务中线性代数计算的算子识别组件。该组件包含线性代数计算算子的逻辑特征表示模块,逻辑特征库和算子识别模块。算子逻辑特征是由算子的数学表达式和数据处理方式构成。算子逻辑特征表示模块提供了一个抽象层,使得不同的算子实现可以在更高层次上被识别;算子逻辑特征库存储了算子逻辑特征表示,为算子识别提供了搜索空间;算子识别模块通过代码解析、依赖关系处理捕获算子逻辑特征,通过匹配搜索进而识别算子。实验结果表明,该组件能够提高遗留程序中可优化数学运算结构的识别效率,有助于利用高性能计算库提升程序性能,性能优化效果优于使用目前主流编译器优化的效果。
(3)提出了面向新型体系结构计算系统的算子自适应调度组件。该组件由三个主要部分构成:编译器辅助模块,库例程分配模块以及惰性运行时。该组件利用编译器辅助技术,动态地将计算算子调度到最适合的数学计算库例程,使算子获得了最优执行性能。该组件采用惰性运行时方式支撑算子自适应调度,并设计了基于机器学习的库例程性能评估方法。实验结果表明,该组件显著提高了数值模拟软件与机器学习应用程序的性能,系统计算资源利用率显著提升。
综上所述,本文针对新型体系结构计算系统中计算任务调度优化的三大挑战,提出了动态任务并行调度框架、线性代数计算算子识别组件和算子自适应调度组件。通过以上研究,本文构建了一个优化工具链:首先,动态任务并行调度框架对多任务动态并行的调度优化提高了计算程序的执行性能;其次,线性代数计算算子识别组件可获取更多的数学运算结构单元,增加了算子调度的优化范围;最后,算子自适应调度组件对单任务算子的调度优化进一步提高了计算程序的执行性能。该优化工具链有效解决了计算程序在新型体系结构计算系统上开发和移植过程中的性能优化问题,提升了软件的整体效率和系统资源利用率。
主要学术成果
[1] Qinyun Cai, Guanghua Tan, Wangdong Yang, Xianhao He, Yuwei Yan, Keqin Li, Kenli Li. COALA: A Compiler-Assisted Adaptive Library Routines Allocation Framework for Heterogeneous Systems [J]. IEEE Transactions on Computers, 2024, 73(7): 1724-1737. (CCF-A, 第一作者)
[2] Qinyun Cai, Guoqing Xiao, Shengle Lin, Wangdong Yang, Keqin Li, Kenli Li. ABSS: An Adaptive Batch-Stream Scheduling Module for Dynamic Task Parallelism on Chiplet-based Multi-Chip Systems [J]. ACM Transactions on Parallel Computing, 2024, 11(1): 1-24. (ACM Tans,第一作者)
[3] Yuwei Yan, Yikun Hu, Qinyun Cai, WangDong Yang, Kenli Li. DIDS: A distributed inference framework with dynamic scheduling capability [J]. Future Generation Computer Systems, 2024. (中科院SCI 2区, 第三作者)
[4] Shengle Lin, Wangdong Yang, Yikun Hu, Qinyun Cai, Minlu Dai, Haotian Wang, Kenli Li. HPS Cholesky: Hierarchical parallelized supernodal Cholesky with adaptive parameters [J]. ACM Transactions on Parallel Computing, 2024, 11(1): 1-22. ((ACM Tans,第四作者)