Affiliation:
1. Massachusetts Institute of Technology, Cambridge
Abstract
An optimization technique known as inline substitution is analyzed. The optimization consists of replacing a procedure invocation by a modified copy of the procedure body. The general problem of using inline substitution to minimize execution time subject to size constraints is formulated, and an approximate algorithmic solution is proposed. The algorithm depends on run-time statistics about the program to be optimized. Preliminary results for the CLU structured programming language indicate that, in programs with a low degree of recursion, over 90 percent of all procedure calls can be eliminated, with little increase in the size of compiled code and a small savings in execution time. Other conclusions based on these results are also presented.
Publisher
Association for Computing Machinery (ACM)
Cited by
72 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. GraalSP: Polyglot, efficient, and robust machine learning-based static profiler;Journal of Systems and Software;2024-07
2. A C Subset for Ergonomic Source-to-Source Analyses and Transformations;Proceedings of the 16th Workshop on Rapid Simulation and Performance Evaluation for Design;2024-01-18
3. Exploiting Partially Context-sensitive Profiles to Improve Performance of Hot Code;ACM Transactions on Programming Languages and Systems;2023-12
4. Optimization-Aware Compiler-Level Event Profiling;ACM Transactions on Programming Languages and Systems;2023-06-26
5. Who You Gonna Call: Analyzing the Run-Time Call-Site Behavior of Ruby Applications;Proceedings of the 18th ACM SIGPLAN International Symposium on Dynamic Languages;2022-11-29