先进的和新兴的计算机系统,从超级计算机到嵌入式系统,都具有高性能、高能源效率、加速和专业化的特点。这类系统的设计涉及不断增加的电路复杂性和架构多样性。作为超大规模集成电路的商用高端处理器,几十年来在一个芯片上集成的晶体管数量呈指数级增长。伴随着半导体制造技术的发展,处理器进步的另一个动力是计算机辅助设计(CAD)软件工具的发展。逻辑综合和物理设计(LSPD)工具链使设计者能够在抽象的寄存器传输水平上描述计算机系统,并自动将描述转换成集成电路布局。另一方面,技术扩展的放缓促使了具有特定应用硬件加速器的暗硅和异质结构的出现。高层综合(HLS)工具促进了各种加速器的设计,这些工具将计算机系统的行为描述转化为结构性的寄存器传输级别的描述。CAD方法已经朝着提高设计抽象水平和提供更多选项来优化架构的方向发展。
对于每个通过先进CAD工具合成的系统,设计者在设计空间中探索工具选项和架构选择的最佳配置,也称为旋钮。这些旋钮会影响CAD算法的执行,并最终影响最终实施的多维结果质量(QoR)。在设计空间探索(DSE)期间,设计师利用他们的经验和专业知识来确定旋钮和QoR之间的关系。为了进一步减少DSE期间CAD运行的时间和资源消耗,人们提出了大量的启发式和基于模型的方法。最近,机器学习(ML)和人工智能(AI)的兴起促使人工智能增强的DSE成为可能,它利用ML技术来预测旋钮-QoR关系。然而,现有的启发式和基于ML的方法仍然需要对每个系统进行足够数量的CAD运行,因为它们没有像设计师那样积累和利用整个系统的经验知识。
为了扩大人工智能增强的DSE的潜力并推动前沿领域的发展,由于CAD流程的特点,出现了多种挑战:1)许多ML应用利用从巨大的用户输入集合和公共数据库中获得的数据来解决问题,而每个系统的QoR预测问题都受到从昂贵的CAD运行中获得数据的限制。特别是,一个工业LSPD工具链规定了数百个独立的旋钮,导致了极端的维度诅咒。2)不同的系统表现出不同的旋钮-QoR关系。因此,从以前探索过的系统中学习,需要先确定不同的系统并将它们相互联系起来。通常情况下,要获得一个系统的有效表示是很困难的。3) 设计师经常对不同的系统应用不同的旋钮配置,这使得从以前的DSE结果中学习更加困难。特别是在HLS中,各种系统的异质性导致了它们之间广泛的旋钮异质性。为了解决这些挑战并提高ML性能,作者建议将许多QoR预测问题的元素灵活地相互连接起来。论点是,通过学习其他系统的设计和优化经验,人工智能可以有效地增强对计算机系统设计空间的探索。
对于工业高性能处理器的LSPD,作者提出了一种新的协作推荐系统方法,从许多用户(系统)和项目(旋钮配置)的互动(CAD运行)中学习隐藏特征。为了应对 "二重性 "的诅咒,项目特征被分解为项目属性(旋钮)的特征。综合模型预测了每个用户-项目对的QoR。对于特定应用的加速器的HLS,提出了一系列神经网络模型,其演化顺序为所提出的混合共享转移学习模型。转移学习的目的是利用从以前的问题中获得的知识;然而,由于系统和旋钮的异质性,该模型需要区分哪一块知识应该被转移。所提出的ML方法旨在不仅像设计师那样使用经验知识,而且最终通过提供替代性的见解和建议新系统的优化可能性来帮助设计师。作为这个方向的努力,我开发了一个人工智能增强的DSE工具,利用上述模型,为新的目标系统生成推荐的旋钮配置。通过这项研究,我调查了下一代人工智能增强的DSE的潜力,目的是促进CAD社区的安全协作工程,而不需要分享机密信息和知识产权。