You can either work alone or form a team of two. For your project you can either focus on JIT compilation or Garbage Collection. You shall choose and propose a project on your own. The project proposal should answer the following questions: What do you find interesting in the project? What do you expect to learn through this project implementation? How are you going to demonstrate the success of your project?

Reading Assigments

During this course you will be asked to read a number of scientific papers covering the topics at hand. In total you will be asked to read 7 scientific papers and you will be assigned to deliver a short summary for each of them. We will discuss each paper in the classroom to better understand them and answer any questions you might come up with. Summary format Your summary should answer the following questions: What is the key point of the paper?


Lectures will take place every Tuesday, Wednesday, and Thursday 14:00-16:00 according to the schedule below. Please note that the schedule is subject to change. Week # Description Tuesday Wednesday Thursday Assignment 03/02/2020 1 Introduction & Byte-code interpretation Slides (Course Intro) Slides (VMs Intro) Slides (The JVM) Reading (Interpreters) 10/02/2020 2 Garbage Collection Slides (GC Intro) Paper (Interpreters) Slides (GC Intro2) Reading (G1) 17/02/2020 3 Just In Time Compilation Slides (JIT 1) Slides (JIT 2) Tutorial (G1) Reading (JIT History) 24/02/2020 4 Metacircular VMs Slides (Metacircular) Paper (JIT History) Tutorial (Maxine VM) Reading (Maxine VM) 02/03/2020 5 Metacircular VMs Slides (Truffle) Paper (Maxine VM) – – 09/03/2020 6 Memory Models – – Slides (Concurrency) – 16/03/2020 7 Concurrency Paper (JMM) Slides (Java Concurrency) – Reading (JDMM) 23/03/2020 8 – 25th of March – – Reading (JMM) 30/03/2020 9 Advanced Garbage Collection + Performance Slides Paper (JDMM) – Reading (Performance) 06/04/2020 10 Profiling and Adaptive Optimization Paper(Performance) Slides (Guest: Dr.