2 citations · 4 across the 5 of their papers we have counts for
5 papers
Automated Profile-Guided Replacement of Data Structures to Reduce Memory Allocation
Lukas Makor, Sebastian Kloibhofer, Peter Hofer +2
Data structures are a cornerstone of most modern programming languages. Whether they are provided via separate libraries, built into the language specification, or as part of the l…
Control Flow Duplication for Columnar Arrays in a Dynamic Compiler
Sebastian Kloibhofer, Lukas Makor, David Leopoldseder +3
Columnar databases are an established way to speed up online analytical processing (OLAP) queries. Nowadays, data processing (e.g., storage, visualization, and analytics) is often…
Compilation Forking: A Fast and Flexible Way of Generating Data for Compiler-Internal Machine Learning Tasks
Raphael Mosaner, David Leopoldseder, Wolfgang Kisling +2
Compiler optimization decisions are often based on hand-crafted heuristics centered around a few established benchmark suites. Alternatively, they can be learned from feature and p…
Supporting On-Stack Replacement in Unstructured Languages by Loop Reconstruction and Extraction
Raphael Mosaner, David Leopoldseder, Manuel Rigger +2
On-stack replacement (OSR) is a common technique employed by dynamic compilers to reduce program warm-up time. OSR allows switching from interpreted to compiled code during the exe…
On Evaluating the Renaissance Benchmarking Suite: Variety, Performance, and Complexity
Aleksandar Prokopec, Andrea Rosà, David Leopoldseder +9
The recently proposed Renaissance suite is composed of modern, real-world, concurrent, and object-oriented workloads that exercise various concurrency primitives of the JVM. Renais…