• Publications
  • Influence
Renaissance: benchmarking suite for parallel applications on the JVM
TLDR
We present Renaissance, a new benchmark suite composed of modern, real-world, concurrent, and object-oriented workloads that exercise various concurrency primitives of the JVM. Expand
  • 19
  • 4
  • PDF
Making collection operations optimal with aggressive JIT compilation
TLDR
In this paper, we show that, despite the conventional wisdom about the HotSpot C2 compiler, most overheads introduced by Scala standard library collections can be removed and optimal code can be generated with a sufficiently aggressive JIT compiler. Expand
  • 16
  • 1
An Optimization-Driven Incremental Inline Substitution Algorithm for Just-in-Time Compilers
TLDR
In this paper, we describe a novel inlining algorithm for JIT compilers that incrementally explores a program’s call graph, and alternates between inlining and optimizations. Expand
  • 6
  • 1
  • PDF
Dominance-based duplication simulation (DBDS): code duplication to enable compiler optimizations
TLDR
Compilers perform a variety of advanced optimizations to improve the quality of the generated machine code. Expand
  • 20
  • PDF
An Analysis of x86-64 Inline Assembly in C Programs
TLDR
This paper investigates the use of x86-64 inline assembly in 1264 C projects from GitHub and combines qualitative and quantitative analyses to answer questions that tool authors may have. Expand
  • 12
  • PDF
Java-to-JavaScript translation via structured control flow reconstruction of compiler IR
TLDR
We present an approach to cross-compile Java bytecodes to Java-Script, building on existing Java optimizing compiler technology. Expand
  • 5
A cost model for a graph-based intermediate-representation in a dynamic compiler
TLDR
We propose a cost model for Graal’s high-level intermediate representation that models relative operation latencies and operation sizes in order to be used in trade-off functions of compiler optimizations. Expand
  • 3
  • PDF
Simulation-based code duplication for enhancing compiler optimizations
TLDR
The scope of compiler optimizations is often limited by control flow, which prohibits optimizations across basic block boundaries. Expand
  • 1
  • PDF
Fast-path loop unrolling of non-counted loops to enable subsequent compiler optimizations
TLDR
This paper presents an unrolling approach for non-counted loops that uses simulation at run time to determine whether unrolling such loops enables subsequent compiler optimizations. Expand
  • 3
  • PDF
...
1
2
...