English
Related papers

Related papers: Categorization of Program Regions for Agile Compil…

200 papers

The performance of the code a compiler generates depends on the order in which it applies the optimization passes. Choosing a good order--often referred to as the phase-ordering problem, is an NP-hard problem. As a result, existing…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-03-09 Qijing Huang , Ameer Haj-Ali , William Moses , John Xiang , Ion Stoica , Krste Asanovic , John Wawrzynek

To implement quantum algorithms on a quantum computer, we must overcome the twin problems of fault-tolerance -- how can we realize a relatively noiseless computation by cleverly combining noisy components? -- and compilation -- how can we…

Quantum Physics · Physics 2026-04-29 Jack Weinberg , Narayanan Rengaswamy

The emergence of machine learning, image and audio processing on edge devices has motivated research towards power efficient custom hardware accelerators. Though FPGAs are an ideal target for energy efficient custom accelerators, the…

Hardware Architecture · Computer Science 2021-03-02 Kingshuk Majumder , Uday Bondhugula

While polyhedral compilers have shown success in implementing advanced code transformations, they still face challenges in selecting the ones that lead to the most profitable speedups. This has motivated the use of machine learning based…

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

Once a program file is modified, the recompilation time should be minimized, without sacrificing execution speed or high level object oriented features. The recompilation time is often a problem for the large graphical interactive…

Programming Languages · Computer Science 2007-05-23 Jerome Collin , Michel Dagenais

Large Language Models (LLMs) have demonstrated great promise in generating code, especially when used inside an evolutionary computation framework to iteratively optimize the generated algorithms. However, in some cases they fail to…

Neural and Evolutionary Computing · Computer Science 2025-03-24 Niki van Stein , Anna V. Kononova , Lars Kotthoff , Thomas Bäck

Modern compilers rely on hand-crafted heuristics to guide optimization passes. These human-designed rules often struggle to adapt to the complexity of modern software and hardware and lead to high maintenance burden. To address this…

Artificial Intelligence · Computer Science 2026-01-30 Hongzheng Chen , Alexander Novikov , Ngân Vũ , Hanna Alam , Zhiru Zhang , Aiden Grossman , Mircea Trofin , Amir Yazdanbakhsh

Compiler optimizations, usually expressed as rewrites on program graphs, are a core part of all modern compilers. However, even production compilers have bugs, and these bugs are difficult to detect and resolve. The problem only becomes…

Programming Languages · Computer Science 2014-07-31 William Mansky , Dennis Griffith , Elsa L. Gunter

Instruction selection is one of three optimisation problems involved in the code generator backend of a compiler. The instruction selector is responsible of transforming an input program from its target-independent representation into a…

Programming Languages · Computer Science 2013-10-08 Gabriel S. Hjort Blindell

Optimizing deep learning models is generally performed in two steps: (i) high-level graph optimizations such as kernel fusion and (ii) low level kernel optimizations such as those found in vendor libraries. This approach often leaves…

Machine Learning · Computer Science 2021-03-08 Pratik Fegade , Tianqi Chen , Phillip B. Gibbons , Todd C. Mowry

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…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-06-18 Kewen Meng , Boyana Norris

This paper introduces a combinatorial optimization approach to register allocation and instruction scheduling, two central compiler problems. Combinatorial optimization has the potential to solve these problems optimally and to exploit…

Programming Languages · Computer Science 2019-06-21 Roberto Castañeda Lozano , Mats Carlsson , Gabriel Hjort Blindell , Christian Schulte

Computational memory (CM) is a promising approach for accelerating inference on neural networks (NN) by using enhanced memories that, in addition to storing data, allow computations on them. One of the main challenges of this approach is…

Distributed, Parallel, and Cluster Computing · Computer Science 2020-04-27 Kornilios Kourtis , Martino Dazzi , Nikolas Ioannou , Tobias Grosser , Abu Sebastian , Evangelos Eleftheriou

Computing systems have become increasingly complex with the emergence of heterogeneous hardware combining multicore CPUs and GPUs. These parallel systems exhibit tremendous computational power at the cost of increased programming effort.…

Distributed, Parallel, and Cluster Computing · Computer Science 2015-02-10 Michel Steuwer , Christian Fensch , Christophe Dubach

High-level synthesis, source-to-source compilers, and various Design Space Exploration techniques for pragma insertion have significantly improved the Quality of Results of generated designs. These tools offer benefits such as reduced…

Software Engineering · Computer Science 2025-03-04 Stéphane Pouget , Louis-Noël Pouchet , Jason Cong

Sparse tensors arise in problems in science, engineering, machine learning, and data analytics. Programs that operate on such tensors can exploit sparsity to reduce storage requirements and computational time. Developing and maintaining…

Programming Languages · Computer Science 2022-09-20 Aart J. C. Bik , Penporn Koanantakool , Tatiana Shpeisman , Nicolas Vasilache , Bixia Zheng , Fredrik Kjolstad

We consider the problem of generating automatic code given sample input-output pairs. We train a neural network to map from the current state and the outputs to the program's next statement. The neural network optimizes multiple tasks…

Machine Learning · Computer Science 2019-01-23 Amit Zohar , Lior Wolf

The rapidly evolving landscape of AI and machine learning workloads has widened the gap between high-level domain operations and efficient hardware utilization. Achieving near-peak performance still demands deep hardware expertise-experts…

Machine Learning · Computer Science 2025-11-19 Arun Thangamani , Md Asghar Ahmad Shahid , Adam Siemieniuk , Rolf Morel , Renato Golin , Alexander Heinecke

The increasing demand of dedicated accelerators to improve energy efficiency and performance has highlighted FPGAs as a promising option to deliver both. However, programming FPGAs in hardware description languages requires long time and…

Hardware Architecture · Computer Science 2020-03-31 Maria A. Dávila-Guzmán , Rubén Gran Tejero , María Villarroya-Gaudó , Darío Suárez Gracia