Automation, Compilers, and Code-Generation



When: Summer semester 2016

CAMPUS #: 15ss-46578

Contact: Diego Fabregat




Prerequisites


Courses on C/C++ programming, high-performance computing or introduction to compilers constitute an appropriate background for this seminar. Reasonably deep knowledge in one or more of the following topics makes you a suitable participant:
  • C/C++ programming, C++ templates
  • OpenMP, multithreading, distributed-memory programming, task parallelism
  • Autovectorization, vector intrinsics
  • Numerical linear algebra
This seminar is also offered to students of the MSSSE/Software Engineering program

Seminar rules

  • You may ask for a different topic no later than Wednesday, May 4th, 23:59:59.
  • You may drop the seminar no later than Wednesday, May 18th, 23:59:59.
    Then, I will send the ZPA the list of students participating in the seminar.
  • Evaluation:
    • Reports will have a length of 7 to 10 pages.
    • The presentations will be 25+5; that is, 25 minutes for the talk + 5 minutes for questions and answers.
    • The weight of each task in the final grade is
      • Report: 50%
      • Presentation: 50%

Lectures

  • When: Wednesdays, 5:00pm.
  • Where: Rogowski 115 - AICES seminar room (Schinkelstrasse 2)
  • Start: Wednesday, April 27, 5.15pm


Schedule

  • Wed, Apr 27, 5.15pm: Topic assignment; semester schedule.
  • Wed, May 18, 5pm: First review: report sketch.
  • Wed, Jun 08, 5pm: Second review: slides sketch.
  • Wed, Jun 29, 5pm: DEADLINE: slides submission.
  • Wed, Jul 06, 5-7:30pm: Presentations - Session I.
  • Mon, Jul 11, 5-7:30pm: Presentations - Session II.
  • Wed, Jul 13, 5-7:30pm: Presentations - Session III.
  • Wed, Jul 20, 5pm: DEADLINE: report submission.


Assigned Topics


# Name Topic Presentation date Turn Slides
2 Frank Emrich LLVM: IR and Optimization Jul 06 I [PDF]
10 Simon Grätzer LLVM: Code generation + autovec Jul 06 II [PDF]
8 Andreas Schmitz icc/gcc autovectorization Jul 06 III [PDF] [CODE]
9 Felix Schwinger Roofline model: compute bound Jul 06 IV [PDF]
4 Safdar Khan Just-in-time compilation Jul 11 I [PDF]
6 Oliver Ney BTO compiler Jul 11 II [PDF] [CODE]
5 Sabarinath Mahadevan OpenUH Jul 11 III [PDF]
12 Patrick Ziegler Nanos + Mercurium Jul 11 IV [PDF]
3 Christian Fischer (Smart) Expression templates Jul 13 I [PDF]
11 Umair Muslim Armadillo Jul 13 II [PDF]
7 Md Ashiqur Rahman Eigen Jul 13 III [PDF]


Material

  • Guidelines: [Guidelines]
  • Presentations: "HOWTO: Presentations", by P. Bientinesi [PDF]
  • Report: [Template]