MLIR 转换方言。你的编译器比你想象的更强大

Martin Lücke, Oleksandr Zinenko, William S. Moses, Michel Steuwer, Albert Cohen
{"title":"MLIR 转换方言。你的编译器比你想象的更强大","authors":"Martin Lücke, Oleksandr Zinenko, William S. Moses, Michel Steuwer, Albert Cohen","doi":"arxiv-2409.03864","DOIUrl":null,"url":null,"abstract":"To take full advantage of a specific hardware target, performance engineers\nneed to gain control on compilers in order to leverage their domain knowledge\nabout the program and hardware. Yet, modern compilers are poorly controlled,\nusually by configuring a sequence of coarse-grained monolithic black-box\npasses, or by means of predefined compiler annotations/pragmas. These can be\neffective, but often do not let users precisely optimize their varying compute\nloads. As a consequence, performance engineers have to resort to implementing\ncustom passes for a specific optimization heuristic, requiring compiler\nengineering expert knowledge. In this paper, we present a technique that provides fine-grained control of\ngeneral-purpose compilers by introducing the Transform dialect, a controllable\nIR-based transformation system implemented in MLIR. The Transform dialect\nempowers performance engineers to optimize their various compute loads by\ncomposing and reusing existing - but currently hidden - compiler features\nwithout the need to implement new passes or even rebuilding the compiler. We demonstrate in five case studies that the Transform dialect enables\nprecise, safe composition of compiler transformations and allows for\nstraightforward integration with state-of-the-art search methods.","PeriodicalId":501197,"journal":{"name":"arXiv - CS - Programming Languages","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2024-09-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"The MLIR Transform Dialect. Your compiler is more powerful than you think\",\"authors\":\"Martin Lücke, Oleksandr Zinenko, William S. Moses, Michel Steuwer, Albert Cohen\",\"doi\":\"arxiv-2409.03864\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"To take full advantage of a specific hardware target, performance engineers\\nneed to gain control on compilers in order to leverage their domain knowledge\\nabout the program and hardware. Yet, modern compilers are poorly controlled,\\nusually by configuring a sequence of coarse-grained monolithic black-box\\npasses, or by means of predefined compiler annotations/pragmas. These can be\\neffective, but often do not let users precisely optimize their varying compute\\nloads. As a consequence, performance engineers have to resort to implementing\\ncustom passes for a specific optimization heuristic, requiring compiler\\nengineering expert knowledge. In this paper, we present a technique that provides fine-grained control of\\ngeneral-purpose compilers by introducing the Transform dialect, a controllable\\nIR-based transformation system implemented in MLIR. The Transform dialect\\nempowers performance engineers to optimize their various compute loads by\\ncomposing and reusing existing - but currently hidden - compiler features\\nwithout the need to implement new passes or even rebuilding the compiler. We demonstrate in five case studies that the Transform dialect enables\\nprecise, safe composition of compiler transformations and allows for\\nstraightforward integration with state-of-the-art search methods.\",\"PeriodicalId\":501197,\"journal\":{\"name\":\"arXiv - CS - Programming Languages\",\"volume\":null,\"pages\":null},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2024-09-05\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"arXiv - CS - Programming Languages\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/arxiv-2409.03864\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"arXiv - CS - Programming Languages","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/arxiv-2409.03864","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

摘要

为了充分利用特定硬件目标,性能工程师需要对编译器进行控制,以便充分利用他们对程序和硬件的领域知识。然而,现代编译器的控制能力很差,通常是通过配置一系列粗粒度的单片黑盒子,或者通过预定义的编译器注释/语法。这些方法虽然有效,但往往无法让用户精确优化不同的计算负荷。因此,性能工程师不得不为特定的优化启发式实施自定义通路,这需要编译工程方面的专业知识。在本文中,我们介绍了一种技术,通过引入 Transform 方言(一种在 MLIR 中实现的基于 IR 的可控转换系统),对通用编译器进行细粒度控制。Transform 方言使性能工程师能够通过组合和重用现有但目前隐藏的编译器功能来优化各种计算负载,而无需实现新的传递,甚至无需重建编译器。我们通过五个案例研究证明,Transform 方言能够精确、安全地组合编译器转换,并允许与最先进的搜索方法直接集成。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
The MLIR Transform Dialect. Your compiler is more powerful than you think
To take full advantage of a specific hardware target, performance engineers need to gain control on compilers in order to leverage their domain knowledge about the program and hardware. Yet, modern compilers are poorly controlled, usually by configuring a sequence of coarse-grained monolithic black-box passes, or by means of predefined compiler annotations/pragmas. These can be effective, but often do not let users precisely optimize their varying compute loads. As a consequence, performance engineers have to resort to implementing custom passes for a specific optimization heuristic, requiring compiler engineering expert knowledge. In this paper, we present a technique that provides fine-grained control of general-purpose compilers by introducing the Transform dialect, a controllable IR-based transformation system implemented in MLIR. The Transform dialect empowers performance engineers to optimize their various compute loads by composing and reusing existing - but currently hidden - compiler features without the need to implement new passes or even rebuilding the compiler. We demonstrate in five case studies that the Transform dialect enables precise, safe composition of compiler transformations and allows for straightforward integration with state-of-the-art search methods.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信