当前位置: X-MOL 学术arXiv.cs.PF › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Guiding Optimizations with Meliora: A Deep Walk down Memory Lane
arXiv - CS - Performance Pub Date : 2020-06-09 , DOI: arxiv-2006.09473
Kewen Meng and Boyana Norris

Performance models can be very useful for understanding the behavior of applications and hence can help guide design and optimization decisions. Unfortunately, performance modeling of nontrivial computations typically requires significant expertise and human effort. Moreover, even when performed by experts, it is necessarily limited in scope, accuracy, or both. However, since models are not typically available, programmers, compilers or autotuners cannot use them easily to guide optimizations and are limited to heuristic-based methods that potentially take a lot of time to perform unnecessary transformations. We believe that streamlining model generation and making it scalable (both in terms of human effort and code size) would enable dramatic improvements in compilation techniques, as well as manual optimization and autotuning. To that end, we are building the Meliora code analysis infrastructure for machine learning-based performance model generation of arbitrary codes based on static analysis of intermediate language representations. We demonstrate good accuracy in matching known codes and show how Meliora can be used to optimize new codes though reusing optimization knowledge, either manually or in conjunction with an autotuner. When autotuning, Meliora eliminates or dramatically reduces the empirical search space, while generally achieving competitive performance.

中文翻译:

使用 Meliora 指导优化:深入记忆之路

性能模型对于理解应用程序的行为非常有用,因此可以帮助指导设计和优化决策。不幸的是,非平凡计算的性能建模通常需要大量的专业知识和人力。此外,即使由专家执行,也必然在范围、准确性或两者上受到限制。然而,由于模型通常不可用,程序员、编译器或自动调谐器无法轻松使用它们来指导优化,并且仅限于基于启发式的方法,这些方法可能需要大量时间来执行不必要的转换。我们相信,简化模型生成并使其可扩展(在人力和代码大小方面)将使编译技术以及手动优化和自动调整的显着改进成为可能。为此,我们正在构建 Meliora 代码分析基础设施,用于基于中间语言表示的静态分析的任意代码的基于机器学习的性能模型生成。我们展示了匹配已知代码的良好准确性,并展示了如何通过手动或结合自动调谐器重用优化知识,使用 Meliora 来优化新代码。在自动调整时,Meliora 消除或显着减少了经验搜索空间,同时总体上实现了具有竞争力的性能。我们展示了匹配已知代码的良好准确性,并展示了如何通过手动或结合自动调谐器重用优化知识,使用 Meliora 来优化新代码。在自动调整时,Meliora 消除或显着减少了经验搜索空间,同时总体上实现了具有竞争力的性能。我们展示了匹配已知代码的良好准确性,并展示了如何通过手动或结合自动调谐器重用优化知识,使用 Meliora 来优化新代码。在自动调整时,Meliora 消除或显着减少了经验搜索空间,同时总体上实现了具有竞争力的性能。
更新日期:2020-06-18
down
wechat
bug