Alexander Brauckmann

E-mail

Phone

Fax

Visitor's Address

alexander.brauckmann@tu-dresden.de

+49 (0)351 463 42336

+49 (0)351 463 39995

Helmholtzstrasse 18,3rd floor, BAR III59

01069 Dresden
Germany

Curriculum Vitae

Alexander Brauckmann received his Diploma degree in Computer Science from TU Dresden in March 2020, in which he has focused on Software Engineering, Systems Engineering, and Machine Learning. During his studies, he gained experience in various industry internships, as well as a student assistant at the Chair for Compiler Construction, where he wrote his final thesis on Machine Learning models for predictive and generative tasks on source code.

His research interests include

  • Machine Learning models of source code
  • Machine Learning-enabled compiler optimizations
Student Topics

I have several student topics in the intersection of compilers and machine learning available. For concrete descriptions, please email me. Generally, the topics can be adapted to several extends, fitting the scope of research projects or final theses:

  • Modeling Source Code for Machine Learning

Central to ML-Methods is the way how to represent and model data, with the goal to learn meaningful features for the given task. In compilers, knowledge from analysis can be exploited to construct better models. So far, we have explored representations at different levels and modeled them using Graph Neural Network (GNN) models. Your task will be to work on new models with additional compiler-internal semantics.

Requirements: C/C++, Python
Beneficial: Machine Learning, Graph Algorithms
Related Work: [1], [2], [3]

 

  • Self-supervised Learning in the Compiler domain

Labeled datasets are expensive to obtain, whereas semantic knowledge from static analysis can be computed cheaply and automatically. The idea is to pretrain a model with such semantic information, later fine tune it on a relatively smaller dataset on a given task to enable better performance in heuristics of optimization tasks.

Requirements: C/C++, Python
Beneficial: Machine Learning

 

  • Compiler Optimization Tasks

Due to hardness or computational intensitivity, many compiler optimizations rely on heuristics. The goal is to evaluate sophisticated models of source code from our recent work in the use case of concrete heuristics in the LLVM compiler framework.

Requirements: C/C++, Python
Beneficial: LLVM compiler framework
Related Work: [1]

Publications

  • 2021

  • Alexander Brauckmann, Andr'es Goens, Jeronimo Castrillon, "PolyGym: Polyhedral Optimizations as an Environment for Reinforcement Learning", Proceedings of the 30th International Conference on Parallel Architectures and Compilation Techniques (PACT), pp. 17-29, Sep 2021. [doi] [Bibtex & Downloads]
  • 2020

  • Alexander Brauckmann, Andrés Goens, Jeronimo Castrillon, "ComPy-Learn: A Toolbox for Exploring Machine Learning Representations for Compilers", In Proceeding: 2020 Forum for Specification and Design Languages (FDL), pp. 1-4, Sep 2020. [doi] [Bibtex & Downloads]
  • Alexander Brauckmann, Andrés Goens, Sebastian Ertel, Jeronimo Castrillon, "Compiler-Based Graph Representations for Deep Learning Models of Code", Proceedings of the 29th ACM SIGPLAN International Conference on Compiler Construction (CC 2020), Association for Computing Machinery, pp. 201–211, New York, NY, USA, Feb 2020. [doi] [Bibtex & Downloads]
  • Alexander Brauckmann, "Investigating Input Representations and Representation Models of Source Code for Machine Learning", Master's thesis, TU Dresden, Feb 2020. [Bibtex & Downloads]
  • 2019

  • Andrés Goens, Alexander Brauckmann, Sebastian Ertel, Chris Cummins, Hugh Leather, Jeronimo Castrillon, "A Case Study on Machine Learning for Synthesizing Benchmarks", Proceedings of the 3rd ACM SIGPLAN International Workshop on Machine Learning and Programming Languages (MAPL), ACM, pp. 38–46, New York, NY, USA, Jun 2019. [doi] [Bibtex & Downloads]