Auto Tune工具包含RL和GA两种调优模式:
RL调优模式主要支持elewise、broadcast、reduce类的算子,支持的算子列表请参见RL调优模式支持的算子。
主要调优原理为:将Schedule过程抽象为基于蒙特卡洛树搜索(Monte Carlo tree search:MCTS,一种用于某些决策过程中的启发式搜索算法)的决策链,然后使用NN(Neural Networks)指导决策,其中NN基于RL进行训练生成。
GA调优模式主要支持cube类的算子,支持的算子列表请参见GA调优模式支持的算子。
主要调优原理为:通过多级组合优化生成调优空间,加入人工经验进行剪枝,排序,提高调优的效率;利用遗传算法进行多轮的参数寻优,从而获得最优的tiling策略。
RL由RL Tune和RL知识库两部分组成,RL Tune负责进行算子的调优工作,RL知识库存储调优后的策略。
RL的架构如图1所示。
GA调优过程中首先进行调优空间分析,然后利用遗传算法进行调优,评估出最优调优策略后将其放入知识库。
GA的架构如下图所示:
GA的详细调优原理如下所示: