Current Theses

Title

Student

Supervisor

Description

pyFCfier: Portable Python FCifier Mark Nardi Sashko Ristov details
xAFCLSim simulation framework Mika Hautz Sashko Ristov details
xAFCLTrace scheduling and tracing framework Philipp Gritsch Sashko Ristov details
Performance and Usability Analysis of OpenMP Accelerator Support Elias Mayr Philipp Gschwandtner details
Molecular Dynamics Simulation for GPUs and GPU Clusters Simon Lechner Philipp Gschwandtner details
Dynamic Scheduling of Serverless Functions Christian Chisté Fedor Smirnov details
A learning-based simulation framework for volatile cloud resources Johannes Spies, Simon Triendl Sashko Ristov details
Online Betriebskosten- und Mietabrechnung Thomas Larcher Thomas Fahringer details

 

If a bachelor student wants to set his/her initial/final presentation he/she (or the supervisor) MUST contact Sashko Ristov to schedule the presentation!

Details for the theses

Title pyFCfier: Portable Python FCifier
Student Mark Nardi
Language English
Supervisors Sashko Ristov
Description The goal of this thesis is to develop a portable Python FCfier (pyFCfier), which allows the FC developer to select the target FaaS system per serverless function, faasifies parts of the monolith as serverless fynctions across multiple FaaS systems, updates the offloaded code with the corresponding API calls converts Python monoliths as FCs and evaluate their scalability.
Tasks
  • Develop a Python FCifier pyFCfier for multiple FaaS systems.
  • Compose / adapt a monolith that uses multiple cloud services.
  • Code annotation (per line) in Python to be FaaSified.
  • Automatic package development and serverless function deployment of the faasified code.
  • Evaluate the pyFCfier with real-life serverless applications.
Theoretical skills Distributed Systems, Cloud Computing, Serverless
Practical skills Python
Additional information References :

  • (FaaSification annotation) S. Ristov, S. Pedratscher, J. Wallnöfer, and T. Fahringer, “DAF: Dependency-Aware FaaSifier for Node.js Monolithic Applications,” in IEEE Software, doi: 10.1109/MS.2020.3018334, DAF.
  • (FaaS portability) Bachelor theses: “Middleware services to support workflow execution in a Multi-FaaS environment”, student: Jakob Wallnöfer, supervisor: Sashko Ristov, js2faaS, java2faaS, X2FaaS.
  • (Automatic function deployment) R. Cordingly, H. Yu, V. Hoang, Z. Sadeghi, D. Foster, D. Perez, R. Hatchett, and W. Lloyd. “The Serverless Application Analytics Framework: Enabling Design Trade-off Evaluation for Serverless Software.” In 2020 21st ACM/IFIP International Middleware Conference: 6th International Workshop on Serverless Computing (WoSC’20). 2020, SAAF.
  • (Automatic function deployment) Terraform.
  • (Node2FaaS Framework) Node2FaaS FCifier.

Title xAFCLSim simulation framework
Student Mika Hautz
Language English
Supervisors Sashko Ristov
Description Running highly scalable FCs may be a long running and costly operation. To analyze the application behavior with minimal execution time and costs, users prefer to use simulation. The goal of this bachelor thesis is to develop an xAFCL simulation framework, which will simulate the FC execution. The simulated values will be calculated based on a novel FaaS computing model. A dynamism will be added based on some known distributions. FCs are built with the existing [Abstract Function Choreography Language (AFCL)] and run with the existing xAFCL enactment engine.
Tasks
  • Compose / adapt a few real-life applications as FCs.
  • Execute the composed FCs across multiple FaaS providers.
  • Measure and profile the performance and cost of FCs.
  • Model FCs and FaaS systems in xAFCLSim.
  • Visualize the simulation.
  • Evaluate the simulation (cost/performance/possibilities) with real execution.
Theoretical skills Distributed Systems, Cloud Computing, Serverless, AFCL, workflow applications
Practical skills Java.
Additional information References :

  • S. Ristov, S. Pedratscher, T. Fahringer, “AFCL: An Abstract Function Choreography Language for serverless workflow specification,” Future Generation Computer Systems, Volume 114, 2021, Pages 368-382, ISSN 0167-739X, https://doi.org/10.1016/j.future.2020.08.012.
  • Enactment engine to run serverless workflows xAFCL.
  • A multi-FaaS toolkit for portable execution of serverless functions jFaaS

Title xAFCLTrace scheduling and tracing framework
Student Philipp Gritsch
Language German or English
Supervisors Sashko Ristov
Description Running FCs across a heterogeneous environment may not be reproducible, which affects the accuracy and estimation of the FC behavior. The goal of this thesis is to develop an xAFCLTrace scheduling and tracing framework, which will emulate the FC execution based on some scheduling algorithm. The traces may be generated by a real execution or by external sources. FCs are built with the existing Abstract Function Choreography Language (AFCL) and run with the existing xAFCL enactment engine.
Tasks
  • Compose / adapt a few real-life applications as FCs.
  • Execute the composed FCs across multiple FaaS providers Log and trace the real FC execution.
  • Develop a common interface AFCL -> Intermediary representation -> Scheduler (e.g., list-based) -> Intermediary representation -> Concrete Function Choreography Language (CFCL).
  • Visualize the tracing.
  • Evaluate various schedulers (cost/performance) with real execution.
Theoretical skills Distributed Systems, Cloud Computing, Serverless, AFCL, workflow applications
Practical skills Java.
Additional information  References :

  • S. Ristov, S. Pedratscher, T. Fahringer, “AFCL: An Abstract Function Choreography Language for serverless workflow specification,” Future Generation Computer Systems, Volume 114, 2021, Pages 368-382, ISSN 0167-739X, https://doi.org/10.1016/j.future.2020.08.012.
  • Enactment engine to run serverless workflows xAFCL.
  • A multi-FaaS toolkit for portable execution of serverless functions jFaaS

Title Performance and Usability Analysis of OpenMP Accelerator Support
Student Elias Mayr
Language German or English
Supervisors Philipp Gschwandtner
Description Modern high performance computing systems are often equipped with accelerators. Programming these devices is far from easy, as one needs to master distinct memory address spaces, multiple instruction set architectures and non-intuitive performance effects. Aiming at ease-of-use, the OpenMP programming model offers a layer of abstraction in order to write C/C++ code that can be compiled for and executed on accelerators with only a few compiler directives. The goal of this thesis is to study the performance and usability of OpenMP for accelerators on multiple platforms.
Tasks
  • Analysis of the software stack requirements for OpenMP-GPU interoperability
  • Configuring and documenting requirements of OpenMP target support for several platforms
  • Implementation of suitable OpenMP benchmarks
  • Performance and usability analysis of both benchmarks and platform setup
Theoretical skills Parallel Programming, High Performance Computing, GPU Programming
Practical skills C, C++, OpenMP, working on clusters
Additional information

Title Molecular Dynamics Simulation for GPUs and GPU Clusters
Student Simon Lechner
Language German or English
Supervisors Philipp Gschwandtner
Description Running simulations on high performance hardware and clusters is a major part of scientific research. The majority of the most powerful supercomputers are already using GPUs to increase performance, and simulations need to be adapted to make use of this rising technology. This bachelor thesis focuses on porting a reference molecular dynamics application to SYCL for single GPU and Celerity for multi GPU usage. The performance will be evaluated and compared to a serial and parallel CPU version.
Tasks
  • Code analysis of a molecular dynamics simulation application
  • Porting the given C code to C++
  • Parallelising the most compute intensive functions to SYCL
  • Extending the the target platform to GPU clusters using Celerity
  • Performance evaluation
Theoretical skills Parallel Programming, High Performance Computing, GPU Programming
Practical skills C++, SYCL, Celerity, working on clusters
Additional information

Title Dynamic Scheduling of Serverless Functions
Student Christian Chisté
Language English
Supervisors Fedor Smirnov
Description
The execution of applications which are distributed over a large number of cloud resources is subject to a high degree of dynamism w.r.t., e.g. dynamic resource failures or a dynamic variation of the task execution time. Since this dynamism is very difficult or even impossible to predict, generating static schedules which, prior to the execution of the workflow, already fix the task-to-resource mapping, is difficult and may lead to situations where the workflow execution must be aborted and restarted, e.g., due to a single resource failure. For these situations, approaches capable of a dynamic rescheduling of individual tasks/parts of the workflow are a promising alternative to purely static approaches. In this Bachelor’s thesis, an existing engine shall be extended by the capability for dynamic communication with a scheduler. The augmented enactment engine will then be used for experiments in which static and dynamic scheduling approaches are compared with each other.
Tasks
  • Extending the existing engine by adding the ability to communicate dynamically with the scheduler.
  • Design and implementation of an experimental setup to compare static and dynamic scheduling approaches.
  • Evaluation of the experimental results and writing the thesis summarizing the work.
Theoretical skills Distributed Systems
Practical skills Java
Additional information

Title A learning-based simulation framework for volatile cloud resources
Student Johannes Spies, Simon Triendl
Language English
Supervisors Sashko Ristov
Description Cloud simulation frameworks can simulate the behavior  of complex applications when being executed on cloud resources.  However, the simulators need to be configured with many parameters  which are not known by the users. Even a small inaccuracy in the  simulation may generate a huge discrepancy between the simulated and  real behavior. In this theses, the students will extend an existing  simulation framework to improve simulation accuracy based on  insights gained by real execution and performance measurements and  use the same application and resource setup for the simulation.
Tasks
  • Extend the VolatileSim simulator with an execution module for DAX execution on AWS EC2
  • Measure performance of EC2 instances for various workflow application tasks
  • Configure the simulation framework with knowledge gained by  running workflows on EC2
  • Collect and analyse resulting data
Theoretical skills Distributed Systems, workflow applications, Scheduling, DAX
Practical skills AWS, Java.
Additional information The student will work on the VolatileSim simulation framework, which was developed as a part of the master thesis “VolatileSim: a simulation framework for cloud volatile resources”, written by Christoph Schöpf MSc, supervised by Dr. Sashko Ristov.

Title Online Betriebskosten- und Mietabrechnung
Student Thomas Larcher
Language German
Supervisors Thomas Fahringer
Description Es soll eine automatische Betriebskosten- und Mietabrechnung für eine größere Zahl von Mietwohnungen implementiert werden. Dabei soll ein online Zugriff auf diverse Verbraucherpreisindexe durchgeführt werden, um eine etwaige Erhöhung der Miete automatisch zu melden und zu verrechnen. Das System soll gesichert werden, sodass nur durch autorisierte Personen Zugriff erfolgen kann. Die Daten sollen in einer Datenbank gesichert werden.
Tasks
  • Online Webapplikation
  • Verrechnung von Mieten und Betriebskosten gegliedert in verschiedene Steuersätze
  • Online Zugriff auf Verbraucherpreisindexwerte
  • Speichern aller relevanten Daten in einer Datenbank
  • Sicherheitsmaßnahmen und -protokolle
  • Automatische Monitoren und Meldesystem
Skills Java or C++ or Scripting languages, security mechanisms
Additional information