The goal of this seminar is to gain experience in designing experiments that measure the performance of complex software systems, process and analyze the results, as well as build models that describe the behavior of the system. The experimental results and the models will be used to determine the components of the system that are the bottleneck for performance.
To achieve the above goals, we will, on the one hand, review the relevant theory (e.g., Statistical methods, Little's Law, Queuing Theory) and, on the other hand, implement a data processing application that will then be benchmarked and modeled in detail. The seminar concludes with short project presentations, in which students will demonstrate that they have understood the behavior of their implementation and are able to provide ideas for removing bottlenecks based on the experimental data and the models they have built.
The seminar is a combination of traditional lectures and individual project work. In addition to the theoretical foundations, during the lecture hours we will also discuss programming techniques, tools and best practices relevant for implementing the individual project.
Experience with Java programming.
Basic knowledge of computer architecture.
Room 315. IMDEA Software