English
Related papers

Related papers: Loop Optimization Framework

200 papers

Directives for the compiler such as pragmas can help programmers to separate an algorithm's semantics from its optimization. This keeps the code understandable and easier to optimize for different platforms. Simple transformations such as…

Programming Languages · Computer Science 2018-11-05 Michael Kruse , Hal Finkel

The key to performance optimization of a program is to decide correctly when a certain transformation should be applied by a compiler. This is an ideal opportunity to apply machine-learning models to speed up the tuning process; while this…

Loop transformations are semantics-preserving optimization techniques, widely used to maximize objectives such as parallelism. Despite decades of research, applying the optimal composition of loop transformations remains challenging due to…

Programming Languages · Computer Science 2025-12-19 Yijie Zhi , Yayu Cao , Jianhua Dai , Xiaoyang Han , Jingwen Pu , Qingran Wu , Sheng Cheng , Ming Cai

Pragmas for loop transformations, such as unrolling, are implemented in most mainstream compilers. They are used by application programmers because of their ease of use compared to directly modifying the source code of the relevant loops.…

Programming Languages · Computer Science 2019-01-31 Michael Kruse , Hal Finkel

In this paper we introduce Shackleton as a generalized framework enabling the application of linear genetic programming -- a technique under the umbrella of evolutionary algorithms -- to a variety of use cases. We also explore here a novel…

Neural and Evolutionary Computing · Computer Science 2022-02-01 Hannah Peeler , Shuyue Stella Li , Andrew N. Sloss , Kenneth N. Reid , Yuan Yuan , Wolfgang Banzhaf

Leveraging machine-learning (ML) techniques for compiler optimizations has been widely studied and explored in academia. However, the adoption of ML in general-purpose, industry strength compilers has yet to happen. We propose MLGO, a…

Programming Languages · Computer Science 2021-01-14 Mircea Trofin , Yundi Qian , Eugene Brevdo , Zinan Lin , Krzysztof Choromanski , David Li

On-stack replacement (OSR) dynamically transfers execution between different code versions. This mechanism is used in mainstream runtime systems to support adaptive and speculative optimizations by running code tailored to provide the best…

Programming Languages · Computer Science 2017-08-09 Daniele Cono D'Elia , Camil Demetrescu

Traditional optimizing compilers rely on rewrite rules to iteratively apply program transformations. This iterative approach hides optimization opportunities behind intermediate transformation steps. For instance, vectorization can only be…

Programming Languages · Computer Science 2019-04-09 Ulysse Beaugnon , Basile Clément , Nicolas Tollenaere , Albert Cohen

Multi-objective optimization problems (MOPs) are ubiquitous in real-world applications, presenting a complex challenge of balancing multiple conflicting objectives. Traditional evolutionary algorithms (EAs), though effective, often rely on…

Neural and Evolutionary Computing · Computer Science 2024-07-29 Yuxiao Huang , Shenghao Wu , Wenjie Zhang , Jibin Wu , Liang Feng , Kay Chen Tan

Optimizations in a traditional compiler are applied sequentially, with each optimization destructively modifying the program to produce a transformed program that is then passed to the next optimization. We present a new approach for…

Programming Languages · Computer Science 2015-07-01 Ross Tate , Michael Stepp , Zachary Tatlock , Sorin Lerner

Compiler pass auto-tuning is critical for enhancing software performance, yet finding the optimal pass sequence for a specific program is an NP-hard problem. Traditional, general-purpose optimization flags like -O3 and -Oz adopt a…

Software Engineering · Computer Science 2025-10-17 Haolin Pan , Hongbin Zhang , Mingjie Xing , Yanjun Wu

Iterative compilation is a widely adopted technique to optimize programs for different constraints such as performance, code size and power consumption in rapidly evolving hardware and software environments. However, in case of statically…

Programming Languages · Computer Science 2014-07-16 Lianjie Luo , Yang Chen , Chengyong Wu , Shun Long , Grigori Fursin

Compiler optimization relies on sequences of passes to improve program performance. Selecting and ordering these passes automatically, known as compiler auto-tuning, is challenging due to the large and complex search space. Existing…

Software Engineering · Computer Science 2025-10-16 Haolin Pan , Jinyuan Dong , Mingjie Xing , Yanjun Wu

Large Language Models (LLMs) typically generate outputs token by token using a fixed compute budget, leading to inefficient resource utilization. To address this shortcoming, recent advancements in mixture of expert (MoE) models,…

Auto-vectorization is a fundamental optimization for modern compilers to exploit SIMD parallelism. However, state-of-the-art approaches still struggle to handle intricate code patterns, often requiring manual hints or domain-specific…

Software Engineering · Computer Science 2025-06-05 Zhongchun Zheng , Kan Wu , Long Cheng , Lu Li , Rodrigo C. O. Rocha , Tianyi Liu , Wei Wei , Jianjiang Zeng , Xianwei Zhang , Yaoqing Gao

Typical constraints on embedded systems include code size limits, upper bounds on energy consumption and hard or soft deadlines. To meet these requirements, it may be necessary to improve the software by applying various kinds of…

Performance · Computer Science 2010-11-30 Hugues Cassé , Karine Heydemann , Haluk Ozaktas , Jonathan Ponroy , Christine Rochange , Olivier Zendra

Recent advances in LLM-guided evolutionary computation, particularly AlphaEvolve (Novikov et al., 2025; Georgiev et al., 2025), have demonstrated remarkable success in discovering novel mathematical constructions and solving challenging…

Neural and Evolutionary Computing · Computer Science 2025-11-25 Valentin Khrulkov , Andrey Galichin , Denis Bashkirov , Dmitry Vinichenko , Oleg Travkin , Roman Alferov , Andrey Kuznetsov , Ivan Oseledets

One of the challenges for optimizing compilers is to predict whether applying an optimization will improve its execution speed. Programmers may override the compiler's profitability heuristic using optimization directives such as pragmas in…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-10-14 Michael Kruse , Hal Finkel , Xingfu Wu

In the Hydro project we are designing a compiler toolkit that can optimize for the concerns of distributed systems, including scale-up and scale-down, availability, and consistency of outcomes across replicas. This invited paper overviews…

Distributed, Parallel, and Cluster Computing · Computer Science 2023-05-25 Joseph M. Hellerstein , Shadaj Laddad , Mae Milano , Conor Power , Mingwei Samuel

Optimization and generalization are two essential aspects of statistical machine learning. In this paper, we propose a framework to connect optimization with generalization by analyzing the generalization error based on the optimization…

Machine Learning · Statistics 2022-10-13 Fusheng Liu , Haizhao Yang , Soufiane Hayou , Qianxiao Li
‹ Prev 1 2 3 10 Next ›