TUD Logo

TUD Startseite » ... » Lehre » Beleg- und Diplomaufgaben » Laufende Aufgaben

Betriebssysteme

Laufende Studentenaufgaben

This page reflects our current student activities. For further details, please, contact the supervisors or students.

Analysis of the Linux Energy-Aware Scheduler

The Energy-Aware Scheduler considers energy as another scheduling objective next to utilization, fairness, and migration cost.

This thesis should compare the scheduler’s energy behavior with that of CFS and also compare against theoretical best-case approaches.

Supervisor: Till Smejkal, Michael Roitzsch
Bachelor thesis

Implementing Earliest Eligible Virtual Deadline First (EEVDF) on the L4Re microkernel

Commodity operating systems schedulers rarely feature real-time support, but instead focus on throughput for servers, and fairness and responsiveness on end-user devices. Stoica et al. proposed EEVDF [1], an algorithm that allows scheduling of a real-time task set on a fair-weighted queuing scheduler.

In this thesis, an EEVDF scheduler and a suitable API should be designed and implementated either in user- or kernel space on the L4Re/Fiasco microkernel. Further, the thesis should evaluate the systems efficiency and the algorithms efficacy.

[1] Ion Stoica et al.: A Proportional Share Resource Allocation Algorithm for Real-Time, Time-Shared Systems. RTSS 1996, https://pdfs.semanticscholar.org/5b1d/784aae0d5a8c791c09a3274afc25ae9f2700.pdf

Supervisor: Michael Roitzsch, Hannes Weisbach
Großer Beleg

Execution Time Prediction for HEVC

The ATLAS [1] system was developed at the TU Dresden Operating Systems Group to explore an interface, where applications explicitly submit individual real-time jobs, without specifying execution time. Instead, execution time is predicted from application-level hints describing the computational complexity of a job. These hints are called metrics. This construction allows soft-realtime applications to adopt and learn their execution times on a wide array of hardware platforms, with varying performance characteristics.

This thesis should analyse the decoder implementation of HEVC included in FFmpeg to predict the decoding time of each video frame. The thesis should discuss how well the proposed metrics or combination of metrics correlate with frame decoding time and compare against the existing H.264 metrics with respect to prediction accuracy. In the course of this thesis FFmpeg’s HEVC implementation should be augmented to extract the proposed metrics.

[1] Michael Roitzsch, Stefan Wächtler, Hermann Härtig: ATLAS – Look-Ahead Scheduling Using Workload Metrics. RTAS 2013, https://os.inf.tu-dresden.de/papers_ps/rtas2013-mroi-atlas.pdf

Supervisor: Michael Roitzsch, Hannes Weisbach
Bachelor thesis

I/O Scheduling for Modern Storage Technologies

In the past I/O scheduling regulated access to slow I/O devices. However, modern I/O devices offer unparalleled speed, for example SSDs are able to handle thousands to hundreds of thousands of I/O operations per second. Interactive and real-time systems based on older, slow hardware had to depend on real-time capable I/O schedulers. This poses the question whether or not contemporary hardware is „fast enough“ to be used in interactive and real-time systems without specialised I/O scheduler or any I/O scheduler at all.

This thesis should answer the question of how much potential exists for an I/O scheduler to re-oder requests for a net improvement over drive-internal re-ordering. The analysis should contain different background workloads and workload mixes and cover different scheduling policies, including a theoretical, clairvoyant scheduler and the No-Op scheduler. Experiments should include SSDs but can be extended to other storage technologies such as HDDs.

Supervisor: Hannes Weisbach, Michael Roitzsch
Großer Beleg

HPC Applications on Apache Mesos

Mesos is a cloud management system for clusters of machines and it provides support for running MPI applications. The goal of this project is to setup a local Mesos cluster on machines of the OS chair and run MPI benchmark applications on it in order to compare the performance characteristics with native MPI runs.

As an extension, an analysis should be conducted of the benefits and disadvantages of a using a cloud cluster manager instead of a traditional HPC infrastructure.

Supervisor: Michael Roitzsch
Bachelor thesis

WWAD: What Would ATLAS Do?

ATLAS [1] is a real-time scheduler for Linux that is developed at the Operating Systems chair. ATLAS simplifies real-time programming by relieving the developer from the need to specify periods, priorities or execution times.

However, debugging extensions to the ATLAS scheduler within the Linux kernel is difficult. The goal of this assignment is to implement a simulator for the ATLAS kernel scheduler that processes job descriptions and generates the resulting idealized ATLAS schedule. The job descriptions should be manually constructed or automatically generated from application runs.

As a possible extension, a fuzzy comparison of the the simulated schedule to the schedule enacted by the Linux kernel would be helpful for regression testing.

[1] Michael Roitzsch, Stefan Wächtler, Hermann Härtig: ATLAS – Look-Ahead Scheduling Using Workload Metrics. RTAS 2013, https://os.inf.tu-dresden.de/papers_ps/rtas2013-mroi-atlas.pdf

Supervisor: Michael Roitzsch, Hannes Weisbach
Student assistent

Extension of an accelerator-friendly in-memory file system for persistent storage

m3fs is an in-memory file system for M3 [1] that has been designed with the demands of accelerators in mind. To this end, m3fs stores the file's data as extents and the message-passing-based interface allows clients to get direct access to these extents. To maximize performance and allow accelerators to work autonomously for long periods of time, m3fs tries to maximize the size of extents.

The goal of this thesis is to extend m3fs by a storage backend and a buffer cache. In particular, the goal is to keep the advantage that accelerators and other clients can get access to large amounts of data at once.

[1] Nils Asmussen, Marcus Völp, Benedikt Nöthen, Hermann Härtig, Gerhard Fettweis: M3 – A Hardware/Operating-System Co-Design to Tame Heterogeneous Manycores. ASPLOS 2016, http://os.inf.tu-dresden.de/papers_ps/asmussen-m3-asplos16.pdf

Supervisor: Nils Asmussen
Bachelor thesis

Thermal and Energy Scheduling with the ATLAS Scheduler

ATLAS [1] is a real-time scheduler for Linux that is developed at the Operating Systems chair. ATLAS simplifies real-time programming by relieving the developer from the need to specify periods, priorities or execution times.

The ATLAS scheduler has rich knowledge about the application's timing needs. It could use this knowledge for advanced thermal scheduling such as delaying unneeded work to enable Intel Turbo Boost acceleration for more urgent jobs. Also, the ATLAS scheduler allows implementing a variety of scheduling policies, such as race-to-idle or consolidate-to-idle, which have varing energy characteristics.

This thesis should implement and evaluate selected scheduling policies and evaluate their energy and performance impact.

[1] Michael Roitzsch, Stefan Wächtler, Hermann Härtig: ATLAS – Look-Ahead Scheduling Using Workload Metrics. RTAS 2013, https://os.inf.tu-dresden.de/papers_ps/rtas2013-mroi-atlas.pdf

Supervisor: Michael Roitzsch
Großer Beleg

Implementing SGX in Software

Intel offers a hardware solution to encapsulate applications from the OS. The goal of this Beleg/Diploma thesis is to investigate which parts can be implemented as a software only solution inside or on top of a hypervisor. Individual aspects such as the memory protection system of enclaves should be implemented prototypically assuming the availability of scratch pad memory.

Supervisor: Adam Lackorzynski
Master thesis

Distributed Checkpointing

Clusters have grown to a dimension in which distributed compute jobs need to cope with hardware failures to finish correctly. Checkpoint/Restart is one method to cope with such errors, yet recent research suggests that current bandwidth to persistent storage is insufficient to create checkpoints at a useful frequency.

The goal of this thesis is to build a prototype of a checkpointing system for distributed applications on Linux that keeps checkpoint data in RAM and uses erasure codes to reconstruct missing checkpoint data. The checkpoint data itself is to be distributed in the cluster.

Supervisor: Julian Stecklina
Großer Beleg

Kernel Control flow integrity checking using basic block signatures

Control flow integrity (CFI) checking allows to detect invalid control flow (such as incorrect branches) within a program. One way to implement CFI is to assign signatures to basic blocks at compile time and add code to the binary that checks such signatures at runtime [1].

In this task you shall investigate ways to perform CFI for the Fiasco.OC microkernel and investigate means to improve error detection latencies, fault coverage, and performance overhead.

[1] Control Flow Checking Algorithm using Soft-basedIntra-/Inter-block Assigned-Signature

Supervisor: Björn Döbel, Benjamin Engel
Großer Beleg

Stand: 7.11.2018, 15:21 Uhr
Autor: Webmaster