Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Themen für Abschlussarbeiten sind in der Regel im Umfeld der aktuellen Forschungsaktivitäten der Abteilung angesiedelt, im Umfeld verteilter Speichersysteme (BigData/Graph-Verarbeitung in Cluster-/Cloud-Umgebungen). Auch eigene Themenvorschläge können berücksichtigt werden, sofern sie thematisch zum Abteilungsprofil passen. Eine Liste möglicher Themen findet sich am Ende der Seite.


Info

Wenn Sie sich bezüglich eines möglichen Themas informieren möchten oder einen eigenen Themenvorschlag haben, sprechen Sie uns an!





Aktuelle Abschlussarbeitsthemen


Erweitern
titleHigh Performance Concurrent Ring Buffer in Java

Status
colourGreen
titleBachelor

Panel
borderStyledashed
titleBeschreibung
  • In parallelen Anwendungen wird solch ein Puffer benötigt, wenn N Threads mit einem Thread kommunizieren möchten

    • Das Kommunikationsmuster entspricht N Schreibern und 1 Leser
    • Beispielsweise, wenn N Threads Netzwerknachrichten in einen Puffer schreiben und 1 Thread diese aggregiert herausnimmt und über einen Socket verschickt.
  • In dieser Arbeit soll ein derartiger Ringpuffer in Java implementiert und evaluiert werden (ohne Netzwerk).

  • Der Ringpuffer soll eine statische Anzahl gleich großer Nachrichten (Java-Instanzen) speichern können.

  • Der Zugriff auf der Ringpuffer soll einmal mithilfe von Sperren und einmal mit sperrfreier Synchronisierung realisiert werden.

  • Die Implementierung soll hinsichtlich dem Durchsatz und der Latenz evaluiert und optimiert werden


Panel
borderStyledashed
titleReferenzen

Understanding the LMAX Disruptor



Erweitern
titleConcurrent Buddy Allocator

Status
colourGreen
titleBachelor

Panel
borderStyledashed
titleBeschreibung
  • Sobald viele Threads gleichzeitig Speicher allozieren wollen, so müssen diese Anfragen synchronisiert werden. Hierzu können Sperren oder Spinlocks verwendet werden.

  • Je nachdem wie die Synchronisierung gelöst wurde kann die Skalierbarkeit hinsichtlich der Anzahl Threads dadurch sehr stark eingeschränkt werden

  • In der nachstehenden Publikation wurde ein skalierbares nicht-blockierendes Buddy-System veröffentlicht

  • In dieser Bachelorarbeit soll dieser Ansatz in Java für den Unsafe-Speicherbereich implementiert und anschließend evaluiert werden

  • Der Unsafe-Speicher wird außerhalb des Java-Heaps manuell verwaltet und damit auch außerhalb der Kontrolle des Garbage Collectors


Panel
borderStyledashed
titleReferenzen

A Non-blocking Buddy System for Scalable Memory Allocation on Multi-core Machine



Erweitern
titleFaster Hash Index

Status
colourGreen
titleBachelor

Panel
borderStyledashed
titleBeschreibung
  • Viele In-Memory Key-Value Stores verwenden zur Verwaltung des lokalen Speichers eine Hash-Tabelle für die Abbildung von der globalen ID (engl. key) auf eine lokale virtuelle Adresse.

  • Faster Hash Index ist ein solcher Ansatz, welcher es zudem ermöglicht die Hash-Tabelle dynamisch zu vergrößern

  • In dieser Bachelorarbeit soll dieses Konzepte in Java implementiert werden, einmal im Java Heap und einmal in Unsafe

  • Beide Ansätze sollen evaluiert und verglichen werden


Panel
borderStyledashed
titleReferenzen

Faster: A Concurrent Key-Value Store with In-Place Updates



Erweitern
titleConcurrent Log-Structured Memory

Status
colourBlue
titleMASTER
 
Status
colourRed
titleProjekt

Panel
borderStyledashed
titleBeschreibung
  • Einige Key-Value Systeme verwalten den Arbeitsspeicher als ein Protokoll (engl. log)

  • Der Vorteil hierbei ist, dass es zu keiner Fragmentierung kommt, da neue Daten immer am Ende des Log angehängt werden. Damit dies nebenläufig auf Multicore-Rechnern möglich ist, verwenden manche Systeme mehrere Logs

  • Ein großer Nachteil entsteht, wenn Daten aktualisiert werden, da dann im Log mehrere Versionen gespeichert sind. Somit muss das Log irgendwann bereinigt werden (engl. cleaner). Dies kann nebenläufig erfolgen wozu das Log in Segmente unterteilt wird und dann die Bereinigung segmentweise erfolgt.

  • Damit schneller Daten eingefügt werden können, wurden

  • Wie bei allen Systemen wird eine Abbildung des Keys in das Log benötigt.

  • In dieser Projektarbeit sollen zunächst recherchiert werden welche Konzepte es gibt, mit welchen Vor- und Nachteilen. Zudem sollen bestehende Lösungen experimentell untersucht werden und ein Ansatz in Java-Unsafe implementiert werden.


Panel
borderStyledashed
titleReferenzen

Concurrent Log-Structured Memory for Many-Core Key-Value Stores

Log-structured Memory for DRAM-based Storage



Erweitern
titleLinear Road Benchmark in Java

Status
colourGreen
titleBachelor

Panel
borderStyledashed
titleBeschreibung
  • Ziel der Arbeit ist es, den Linear Road Benchmark, der auf veraltete Linux- und Perlpakete zurückgreift, in Java neu zu implementieren und mit Apache Flink zu testen.


Panel
borderStyledashed
titleReferenzen

A Stream Data Management Benchmark



Erweitern
titleFast RPC based on RDMA

Status
colourBlue
titleMASTER
 
Status
colourRed
titleProjekt

Panel
borderStyledashed
titleBeschreibung
  • Ein entfernter Prozeduraufruf wird häufig in verteilten Systemen verwendet

  • In der Regel sind diese Aufrufe komfortabel aber nicht immer sehr effizient

  • In dieser Projektarbeit soll zunächst der Java-basierte Ansatz DaRPC (Data Center RPC) basierend auf InfiniBand jverbs evaluiert werden

  • Später soll aufbauend auf den gewonnen Erkenntnissen ein RPC für neutrino (Bibliothek von der Abt. BS) entwickelt werden.


Panel
borderStyledashed
titleReferenzen

DaRPC: Data Center RPC

Datacenter RPCs can be General and Fast



Erweitern
titleHigh Performance Concurrent Ring Buffer for N Producers and M Consumers in Java

Status
colourBlue
titleMASTER
 
Status
colourRed
titleProjekt

Panel
borderStyledashed
titleBeschreibung
  • In parallelen Anwendungen wird solch ein Puffer benötigt, wenn N Threads mit M Thread kommunizieren möchten

    • Das Kommunikationsmuster entspricht N Schreibern und M Lesern
  • In dieser Arbeit soll ein derartiger Ringpuffer in Java implementiert und evaluiert werden (ohne Netzwerk).

  • Der Ringpuffer soll eine statische Anzahl gleich großer Nachrichten (Java-Instanzen) speichern können.

  • Der Zugriff auf der Ringpuffer soll einmal mithilfe von Sperren und einmal mit sperrfreier Synchronisierung realisiert werden.

  • Die Implementierung soll hinsichtlich dem Durchsatz und der Latenz evaluiert und optimiert werden


Panel
borderStyledashed
titleReferenzen




Erweitern
titleInfiniBand Monitoring GUI

Status
colourGreen
titleBACHELOR

Panel
borderStyledashed
titleBeschreibung
  • Auf Basis einer bestehenden Bibliotheken zur Überwachung von InfiniBand-Netzwerken soll eine grafische Oberfläche erstellt werden, welche diese Daten aufbereitet und übersichtlich darstellt

  • Die Oberfläche kann beispielsweise mit Grafana erstellt werden
  • Die Bibliothek ist in C++ und Java verfügbar


Panel
borderStyledashed
titleReferenzen

Detector: A small library for reading the performance counters of all InfiniBand devices in a network

jDetector: A JNI-wrapper for Detector

Grafana: The open observability platform



Erweitern
titleA file system for hhuOS

Status
colourGreen
titleBACHELOR

Panel
borderStyledashed
titleBeschreibung
  • hhuOS ist ein kompakter Betriebssystem für die Lehre
  • Es ist ein multitaskingfähiges 32-Bit Betriebssystem für x86 Prozessoren

  • Geschrieben ist hhuOS in C++ und C

  • In dieser Bachelorarbeit soll ein einfaches Dateisystem für hhuOS geschrieben werden, beispielsweise angelehnt an ext2.
  • Die Integration erfolgt über die vorhandene VFS-Schnittstelle


Panel
borderStyledashed
titleReferenzen

Weitere Informationen zu hhuOS finden sich hier.



Erweitern
titleTCP/IP for hhuOS

Status
colourGreen
titleBACHELOR

Panel
borderStyledashed
titleBeschreibung
  • In dieser Bachelorarbeit soll eine bestehende TCP/IP-Implementierung auf hhuOS portiert werden
  • Es gibt beispielsweise kompakte Implementierungen aus dem Embedded Bereich, beispielsweise uIP, siehe unten.
  • In hhuOS ist ein Ethernet-Treiber vorhanden


Panel
borderStyledashed
titleReferenzen

Weitere Informationen zu hhuOS finden sich hier.

Und zu uIP aus Contiki hier.