将线性代数和张量代码与专用硬件加速器相匹配

摘要:用于专用的张量加速器在现代应用程序中展示了线性代数的重要性。这样的加速器具有令人瞩目的性能提升潜力,但需要程序员使用供应商的API重新编写代码,这是扩大规模应用的障碍。最近的研究通过匹配和替换代码中的模式来克服这个问题,但这种方法很脆弱,并且无法处理现实世界代码的多样性。 我们开发了一个使用程序综合将代码区域映射到特定API的编译器ATC。 ATC探索的映射空间是组合性很大的,需要开发程序分类、动态分析、变量约束生成和词法距离匹配技术,使其易于处理。 我们将ATC应用于真实的张量和线性代数代码,并将其与四种最先进的方法进行评估。我们加速了2.6倍到7倍更多的程序,从而实现了一个数量级的性能改进。

作者:Pablo Antonio Mart''inez and Jackson Woodruff and Jordi Armengol-Estap''e and Gregorio Bernab''e and Jos''e Manuel Garc''ia and Michael F. P. O'Boyle

论文ID:2301.11659

分类:Programming Languages

分类简称:cs.PL

提交时间:2023-02-01

PDF 下载: 英文版 中文版pdf翻译中