Master Seminar Course: Generation of Code and Innovative Programming Models (IN2107, IN4590) (Seminar)

Lecturer (assistant)
Duration2 SWS
TermWintersemester 2018/19
Language of instructionEnglish


  • Preliminary meeting: 25.06.2018, 14:00 in 01.06.020
  • Kick-off meeting: 19.10.2018, 10:00 in 01.06.020
    We will collect the deposit for the trip to Frauenchiemsee at the kick-off meeting!
  • Deadline for paper draft: 05.12.2018
  • Peer Review deadline: 16.12.2018
  • Final Paper Due: 18.01.2019
  • Block Seminar: 24.01.2019 - 25.01.2019


Registration is done via the matching system (as with all other seminars).

This is an external seminar. Part of expenses can be covered by TUM, but part also needs to be covered by the students (around 60 Euro). As we have to book early, if you get assigned to this seminar, we will ask you for a deposit of 30,- Euro in advance. This will be used for the expenses for the trip to Frauenchiemsee. You may cancel your registration before October, and get the money back (otherwise refunding is not possible).


For literature on your topic, discuss with your supervisor.


Assigned Topics

Student Supervisor Topic
R.A.P. Michael Petter The Semantics of Transactions and Weak Memory in x86, Power, ARM, and C++
F.B. Josef Weidendorfer Charm++
I.C. Alexis Engelke V8
F.G. Alexis Engelke PyPy
L.S.L. Alexis Engelke Julia
C.K.L. Josef Weidendorfer AnyDSL: a programming system for high performance code with an online partial evaluator
St.S. Alexis Engelke Meltdown, Spectre, etc.
T.S. Michael Petter Quantum Computing: OpenQASM
M.V.M. Josef Weidendorfer OmpSs
O.V. Michael Petter Solidity



The seminar is organized similar to a scientific conference. All talks will be presented 'en bloc' within two consecutive days. The conference will take place at Kloster Frauenwörth at Chiemsee. You will get an email with more details (schedule, meeting point) in beginning of January.

In order to qualify for the ECTS credits, participants have to prepare a paper and present a talk. The paper should have a length of between 8 and 10 pages using the latex template available below. The paper is subject to a review process among students: every attendee will have to review two other papers. The talk should be 25 minutes long. It strictly must not be longer than 30 minutes in any case.

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


In this seminar we discuss novel programming models and code generation techniques with a focus on modern processor architectures like multiprocessors, graphic accelerators, and high performance computers.

Preliminary list of topics (more at the preliminary meeting):

  • Processor vulnerabilities and countermeasures
    • Meltdown, Spectre, etc., and their mitigations
  • Distributed programming models
    • Solidity
    • Legion
    • Charm++
    • OmpSs
    • Hitmap
    • DASH
  • JIT compilers
    • JVM and recent optimizations
    • WebKit JIT compiler
    • .NET RyuJIT
    • V8
    • PyPy
  • Transactional Memory
    • Safe Privatization in Transactional Memory
    • The Semantics of Transactions and Weak Memory in x86, Power, ARM, and C++
  • Miscellaneous
    • AnyDSL: a programming system for high performance code with an online partial evaluator
    • Lightweight Detection of Cache Conflicts
    • Quantum Computing: OpenQASM