国内刊号:43-1258/TP
国际刊号:1007-130X
发布日期:
作者:彭畅, 刘青枝, 陈长波,
单位:(1.中国科学院重庆绿色智能技术研究院,重庆 400714;2.中国科学院大学重庆学院,重庆 400714)
关键词:循环置换,循环分块,多面体模型,自动调优,机器学习,
基金:国家重点研发计划(2020YFA0712300);重庆英才计划青年拔尖项目 (2021000263);中国科学院“西部之光”;重庆市院士牵头科技创新引导专项(cstc2019yszx-jcyjX0003,cstc2020yszx-jcyjX0005,cstc2021yszx-jcyjX0005)
针对常用多面体编译器Pluto默认循环调度和分块大小性能欠佳的问题,提出了一种为其调度计算多种合法置换,根据置换和分块大小构成的配置空间为循环程序自动调优的方法。通过对定义循环融合的标量维度的处理,实现了非完美嵌套循环块间和块内的同时置换。构建了4种机器学习驱动的自动调优策略,为循环程序在指定问题规模下寻找优化的置换序和分块大小组合。默认分块大小下,扩展后的Pluto编译器并行环境下生成的最佳置换相较于Pluto的默认调度取得了最高4.02和几何平均2.12的加速比。通过进一步搜索更优的置换序和分块大小组合,最好的自动调优策略在并行环境下相较于Pluto的默认优化取得了最高5.48和几何平均2.86的加速比。此外,指定问题规模下,自动调优得到的最佳配置和学习模型应用于相似问题规模时,相较于Pluto的默认优化也取得了不同程度的性能提升。
来源:2023年第12期
《计算机工程与科学》期刊编辑部