Alexis Engelke

ORCID: 0000-0003-1900-1292
Publications
Citations
Views
---
Saved
---
About
Contact & Profiles
Research Areas
  • Parallel Computing and Optimization Techniques
  • Logic, programming, and type systems
  • Cloud Computing and Resource Management
  • Distributed systems and fault tolerance
  • Advanced Data Storage Technologies
  • Embedded Systems Design Techniques
  • Distributed and Parallel Computing Systems
  • Scientific Computing and Data Management
  • Advancements in Photolithography Techniques
  • Advanced Database Systems and Queries
  • Security and Verification in Computing
  • Computational Physics and Python Applications

Technical University of Munich
2017-2024

Current hardware development greatly influences the design decisions of modern database systems. For many performance-focused systems, query compilation emerged as an integral part and different approaches for code generation evolved, making use standard compilers, general-purpose compiler libraries, or domain-specific generators. However, primarily focused on dominating x86-64 server architecture; but neglected current developments towards other CPU architectures like ARM RISC...

10.14778/3583140.3583142 article EN Proceedings of the VLDB Endowment 2023-02-01

Dynamic binary instrumentation frameworks are popular tools to enhance programs with additional analysis, debugging, or profiling facilities add optimizations translations without requiring recompilation access source code. They analyze the code, translate into a---typically low-level---intermediate representation, needed transformation and then generate new code on-demand at run-time. Most thereby focus on a fast rewriting process cost of lower quality leading significant slowdown in...

10.1145/3381052.3381319 article EN 2020-03-03

Emulation of other or newer processor architectures is necessary for a wide variety use cases, from ensuring compatibility to offering vehicle computer architecture research. This problem usually approached using dynamic binary translation, where machine code translated, on the fly, host during program execution. Existing systems, like QEMU, focus translation performance rather than overall execution, and extensions, HQEMU, are limited by their underlying implementation. Conversely,...

10.1145/3453933.3454022 article EN 2021-04-07

Providing new parallel programming models/abstractions as a set of library functions has the huge advantage that it allows for an relatively easy incremental porting path legacy HPC applications, in contrast to effort needed when novel concepts are only provided languages or language extensions. However, performance issues be expected with fine granular usage functions. In previous work, we argued binary rewriting can bridge gap by tightly coupling application and at runtime. We showed...

10.1109/ipdpsw.2017.103 article EN 2022 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW) 2017-05-01

Fast compilation is essential for JIT-compilation use cases like dynamic languages or databases as well development productivity when compiling static languages. Template-based allows fast times, but in existing approaches, templates are generally handwritten, limiting flexibility and causing substantial engineering effort.

10.1145/3640537.3641567 article EN 2024-02-17

Low compilation times are highly important in contexts of Just-in-time compilation. This not only applies to language runtimes for Java, WebAssembly, or JavaScript, but is also crucial database systems that employ query as the primary measure achieving high throughput combination with low execution time. We present a performance comparison and detailed analysis compile JIT back-ends provided by GCC, LLVM, Cranelift, single-pass compiler context queries. Our results show LLVM achieves highest...

10.1109/cgo57630.2024.10444856 article EN 2024-02-28

Data science workloads frequently include Python code, but Python's dynamic nature makes efficient execution hard. Traditional approaches either treat as a black box, missing out on optimization potential, or are limited to narrow domain. However, deep and integration of user-defined code into data processing systems requires extracting the semantics entire code. In this paper, we propose novel approach for high-level by transforming general functions program generators that generate...

10.1145/3689737 article EN Proceedings of the ACM on Programming Languages 2024-10-08

In High Performance Computing (HPC) the performance of applications is paramount, which has led to a wide body work on optimizing compilers. However, compilers alone are naturally limited in their potential, as they cannot exploit run-time information specialize generated code. For this reason, components perform such specializations gaining traction. particular, application or use-case driven have high potential for optimizations, can benefit from explicit guidance user, allows targeted...

10.1109/llvmhpchipar51896.2020.00011 article EN 2020-11-01
Coming Soon ...