Seminar: Next-Gen Programming Interfaces and Compilers

Content

In this seminar we discuss novel programming interfaces and compiler techniques with a particular focus on modern processor architectures. Particular topics of interest are (preliminary):

  • Memory Models on different levels: Hardware (NVM), Languages (C, C++), etc.
  • Programming models for novel architectures/extensions (ARMv9/SVE, RISC-V vector operations, FPGAs, neuromorphic chips, etc.)
  • Code generation in different contexts (JavaScript/WebAssembly, SQL, eBPF, binary translation, etc.)

Organization

The seminar is organized similar to a scientific conference. Participants will have to submit a draft paper, which will be peer reviewed by two other participants, and incorporate the received feedback for the final version. The paper should have a length of between 8 and 10 pages using a provided LaTeX template. After submitting the final paper, participants have to give a presentation of 20 minutes (hard time limit). All talks will be presented 'en bloc' within two days at the end of the semester; the block seminar will be on-site at TUM (if possible).

The final grade is influenced mostly by paper/talk quality (half/half), but also the quality of reviews and the participation in discussions after the talks will be taken into account. Delivering either the paper or the talk in unacceptable quality will result in total failure.

Schedule

  • Preliminary meeting: 2022-07-19, 14:00 s.t., virtual via BigBlueButton
    • We will not prioritize based on attendance. If you have questions, don't hesitate to contact one of the organizers.
  • Topic assignment: 2022-10-14
  • Kick-off meeting: 2022-10-18, 16:00 s.t., room 02.09.014
    • Introduction to literature research and scientific writing/presentation [slides]
  • Paper structure due: 2022-11-21 (Submission via e-mail)
  • Paper draft due: 2022-12-05, 12:00 (noon) (upload via HotCRP)
  • Reviews due: 2022-12-19, 12:00 (noon) (submission via HotCRP)
  • Final paper due: 2023-01-24, 12:00 (noon) (upload of paper and slides via HotCRP)
  • Block seminar: 2023-01-26, 14-18, and 2023-01-27, 10-17 (on-site in room 02.09.014)

Material

Topic Assignment

Stud.TopicAdvisor
ARSandboxed Code Execution in the Kernel: eBPFAE
BRExtended x86 Memory ModelAE
FDSurvey on Compile-time-optimized JIT-compilersAE
FGThe fight for the C++ legacy: Cppfront, Carbon, etc. (1)MP
FReOwnership types in theory and practice (in Rust)MP
FRoThe fight for the C++ legacy: Cppfront, Carbon, etc. (2)MP
IAProgramming your last will: Catala and eFlintMP
JJProof-Oriented Programming in F*MP
JMLingua Franca for Binaries: Efficient Execution of WebAssemblyAE
LNOffloading in OpenMP and improvements in OpenMP 5.xJW
MGTask-based Programming Models: LegionJW
MSOne IR for Everything: MLIR and its applicationsAE
TSA New Back-end for LLVM: GlobalISelAE