VLDB 2026 Research / reviewers in the wild / expert
Gabriel Hjort Blindell
dblp:131/6604
· DBLP profile ↗
7ranked-venue papers
4as first author
0since 2021 · last 2019
0000-0001-6794-6413ORCID · corroborated
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 6 · 3 first-authorArtificial intelligence and machine learning · 2 · 2 first-authorSystems, architecture and hardware · 1 · 1 first-author
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
1 paper |
Compilers and program optimization · 100% | |
| Theoretical computer science
1 paper |
Mathematical optimization · 100% |
Topics — the 4 heaviest of 4, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Compilers and program optimization
instruction scheduling |
0.4 | 1 | 2019 | Combinatorial Register Allocation and Instruction Scheduling · ACM Trans. Program. Lang. Syst. 2019 |
Compilers and program optimization
register allocation |
0.4 | 1 | 2019 | Combinatorial Register Allocation and Instruction Scheduling · ACM Trans. Program. Lang. Syst. 2019 |
Mathematical optimization
constraint programming |
0.4 | 1 | 2019 | Combinatorial Register Allocation and Instruction Scheduling · ACM Trans. Program. Lang. Syst. 2019 |
Mathematical optimization
discrete optimization |
0.4 | 1 | 2019 | Combinatorial Register Allocation and Instruction Scheduling · ACM Trans. Program. Lang. Syst. 2019 |
Methods — techniques the papers use, named apart from their topics
constraint programming · 0.8combinatorial optimization · 0.8
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2019 | Combinatorial Register Allocation and Instruction SchedulingabstractThis article 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 processor-specific features readily. Our approach is the first to leverage this potential in practice : it captures the complete set of program transformations used in state-of-the-art compilers, scales to medium-sized functions of up to 1,000 instructions, and generates executable code. This level of practicality is reached by using constraint programming, a particularly suitable combinatorial optimization technique. Unison, the implementation of our approach, is open source, used in industry, and integrated with the LLVM toolchain. An extensive evaluation confirms that Unison generates better code than LLVM while scaling to medium-sized functions. The evaluation uses systematically selected benchmarks from MediaBench and SPEC CPU2006 and different processor architectures (Hexagon, ARM, MIPS). Mean estimated speedup ranges from 1.1% to 10% and mean code size reduction ranges from 1.3% to 3.8% for the different architectures. A significant part of this improvement is due to the integrated nature of the approach. Executing the generated code on Hexagon confirms that the estimated speedup results in actual speedup. Given a fixed time limit, Unison solves optimally functions of up to 946 instructions, nearly an order of magnitude larger than previous approaches. The results show that our combinatorial approach can be applied in practice to trade compilation time for code quality beyond the usual compiler optimization levels, identify improvement opportunities in heuristic algorithms, and fully exploit processor-specific features. Roberto Castañeda Lozano, Mats Carlsson, Gabriel Hjort Blindell, Christian Schulte 0001 |
ACM Trans. Program. Lang. Syst. | 3 |
| 2017 | Complete and Practical Universal Instruction SelectionabstractIn code generation, instruction selection chooses processor instructions to implement a program under compilation where code quality crucially depends on the choice of instructions. Using methods from combinatorial optimization, this paper proposes an expressive model that integrates global instruction selection with global code motion. The model introduces (1) handling of memory computations and function calls, (2) a method for inserting additional jump instructions where necessary, (3) a dependency-based technique to ensure correct combinations of instructions, (4) value reuse to improve code quality, and (5) an objective function that reduces compilation time and increases scalability by exploiting bounding techniques. The approach is demonstrated to be complete and practical, competitive with LLVM, and potentially optimal (w.r.t. the model) for medium-sized functions. The results show that combinatorial optimization for instruction selection is well-suited to exploit the potential of modern processors in embedded systems. Gabriel Hjort Blindell, Mats Carlsson, Roberto Castañeda Lozano, Christian Schulte 0001 |
ACM Trans. Embed. Comput. Syst. | 1 |
| 2016 | Register allocation and instruction scheduling in UnisonabstractThis paper describes Unison, a simple, flexible, and potentially optimal software tool that performs register allocation and instruction scheduling in integration using combinatorial optimization. The tool can be used as an alternative or as a complement to traditional approaches, which are fast but complex and suboptimal. Unison is most suitable whenever high-quality code is required and longer compilation times can be tolerated (such as in embedded systems or library releases), or the targeted processors are so irregular that traditional compilers fail to generate satisfactory code. Roberto Castañeda Lozano, Mats Carlsson, Gabriel Hjort Blindell, Christian Schulte 0001 |
CC | 3 |
| 2015 | Modeling Universal Instruction Selection
Gabriel Hjort Blindell, Roberto Castañeda Lozano, Mats Carlsson, Christian Schulte 0001 |
CP | 1 |
| 2015 | Erratum to: Modeling Universal Instruction Selection
Gabriel Hjort Blindell, Roberto Castañeda Lozano, Mats Carlsson, Christian Schulte 0001 |
CP | 1 |
| 2014 | Synthesizing code for GPGPUs from abstract formal modelsabstractToday multiple frameworks exist for elevating the task of writing programs for GPGPUs, which are massively dataparallel execution platforms. These are needed as writing correct and high-performing applications for GPGPUs is notoriously difficult due to the intricacies of the underlying architecture. However, the existing frameworks lack a formal foundation that makes them difficult to use together with formal verification, testing, and design space exploration. We present in this paper a novel software synthesis tool - called f2cc - which is capable of generating efficient GPGPU code from abstract formal models based on the synchronous model of computation. These models can be built using high-level modeling methodologies that hide low-level architecture details from the developer. The correctness of the tool has been experimentally validated on models derived from two applications. The experiments also demonstrate that the synthesized GPGPU code yielded a 28 x speedup when executed on a graphics card with 96 cores and compared against a sequential version that uses only the CPU. Gabriel Hjort Blindell, Christian Menne, Ingo Sander |
FDL | 1 |
| 2014 | Combinatorial spill code optimization and ultimate coalescingabstractThis paper presents a novel combinatorial model that integrates global register allocation based on ultimate coalescing, spill code optimization, register packing, and multiple register banks with instruction scheduling (including VLIW). The model exploits alternative temporaries that hold the same value as a new concept for ultimate coalescing and spill code optimization. Roberto Castañeda Lozano, Mats Carlsson, Gabriel Hjort Blindell, Christian Schulte 0001 |
LCTES | 3 |