Current Theses





Risks in Cloud Computing Elfi Shiu Mee Lo Radu Prodan details
Tiny DAS: a new Approach  to Trustmanagement in Sensor Networks Daniel Walter
Florian Lechner
Simon Ostermann details
Surveying the state of auto-vectorization Andreas Treichl Peter Thoman details
Replacing webservice middleware in Askalon3 Wolfgang Ditz Simon Ostermann details
Performancevergleich zwischen PHP5 und PHP7, SQL und NoSQL, und verteilten und nicht verteilten Systemen am Beispiel einer Projektmanagament Plattform  Tobias Rieser und David Abfalterer Simon Ostermann details
Implementing BiCGStab Solver in OpenCL Felix Niederwanger Peter Thoman details
OpenGL Test Applications for GPU Energy and Power Consumptions Boris Schmiedlehner Biagio Cosenza details
Resource tracking tool using dynamic instrumentation available Radu Prodan details
Verwaltungssystem für Literaturreferenzen Martin Klotz Thomas Fahringer details


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

Details for the theses

Title Risks in Cloud Computing
Student  Elfi Shiu Mee Lo
Language  English
Supervisors Radu Prodan
Description  In this thesis various risks of cloud computing are being investigated and described.
  •  Familiarize with Cloud
  • Analyse various risks of Cloud
  • Set up a table, showing the risks of different cloud providers
  • Statistic analysis
Theoretical skills  Statistic
Practical skills  Statistic
Additional information


Title Tiny DAS: a new Approach  to Trustmanagement in Sensor Networks
Student  Daniel Walter
Florian Lechner
Language  English
Supervisors  Simon Ostermann
Description  The goal of this thesis is to design and implement a distributed authentic action scheme for sensor networks, that provides scalable and failure tolerant means of authentication to energy-restricted sensor networks.
  •  Evaluate State of the Art
  • Design Framework and Protocol
  • Implementation
  • Simulation and Measurement
Theoretical skills Cryptography, Security, Sensor Networks
Practical skills  Embedded Systems, C/C++
Additional information


Title Surveying the state of auto-vectorization
Student Andreas Treichl
Language English
Supervisors Peter Thoman
Description In this thesis the state of the auto-vectorization components in various compilers will be investigated.
  • Selection of multiple algorithms which can be vectorized
  • Implementation of these algorithms in basic C/C++, and in another manually vectorized version with intrinsics
  • Use of multiple compilers and analysis of the resulting code w.r.t vectorization
  • Comparative benchmarking of all versions
Theoretical skills Vectorization
Practical skills  C/C++
Additional information


Title Replacing webservice middleware in Askalon3
Student  Wolfgang Ditz
Language  English
Supervisors  Simon Ostermann
Description  The goal of this thesis is to work with the the gridarm subproject of the Askalon3 Framework and replace the aging globus web framework with something less awkward.
The replacement should make the deployment easier and the codebase more maintainable.
  •  Get in touch with askalon3/gridarm project
  • Analyze the used communication via the globus framework
  • investigate different alternatives
  • implement Communication via alternative
  • remove globus from ant build system
Theoretical skills  java, askalon3, globus
Practical skills  java, ant, javadoc, webservices
Additional information


Title Performancevergleich zwischen PHP5 und PHP7, SQL und NoSQL, und verteilten und nicht verteilten Systemen am Beispiel einer Projektmanagament Plattform 
Student Tobias Rieser und David Abfalterer
Language English/German
Supervisors Simon Ostermann
Description Durch unsere Erfahrung bei der Implementierung einer Projektmanagement Plattform, ergeben sich aus Performancesicht mehrere Möglichkeiten der Implementierung bzw. Datenverwaltung. Einige dieser Möglichkeiten wollen wir in unserer Arbeit beleuchten.
  1. Verteiltes und nicht verteiltes Serversystem
    • Theoretischer Vergleich zwischen lokalen und verteilten Systemen
    • Performancevergleich zwischen lokalen Servern und verteilten Servern am Beispiel AWS EC2 Instanzen (1 Instanz / mehrere Instanzen / mehrere Instanzen verteilt auf mehreren Kontinenten) (Tobias Rieser)
  2.  Implementierung durch PHP5 und PHP7
    • Theoretischer Vergleich zwischen den zwei Versionen der Programmiersprache PHP (Syntax, OOP, Funktionen etc.)
    • praktischer Performancevergleich zwischen PHP5 und PHP7 auf den verschiedensten Systemen von Punkt 1
    • Untersuchung der Nutzung von JavaScript Webworker zur pseudoparallen Ausführung von Anfragen (David Abfalterer)
  3.  SQL und NoSQL Datenbanken
    • Theoretischer Vergleich zwischen SQL und NoSQL
    • Performancevergleich von SQL (MySQL) und NoSQL (AWS DynamoDB) auf den verschiedenen Systemen aus Punkt 1 und den verschiedenen Implementierungsmöglichkeiten aus Punkt 2 (Tobias Rieser und David Abfalterer)
Theoretical skills Concurrent systems
Practical skills Web 2.0, Amazon EC2, DynamoDB, MySQL


Title Implementing BiCGStab Solver in OpenCL
Student Felix Niederwanger
Language English
Supervisors Peter Thoman
Description General purpose computing on GPUs can improve the performance of some computations by orders of magnitude. The goal of this thesis is to implement a given linear solver, the BiCGStab solver, in OpenCL and compare the performance of the solver with a already existing OpenMPI parallelized version. If successful, the solver could become part of the astrophysical PICARD code, used for the calculation of comic ray propagation.
  •  Familiarize yourself with OpenCL
  •  Develop a matrix library for the later development of the BiCGStab solver
  •  Implement the solver using the OpenCL parallelized matrix library
  •  Benchmark the implementation on multiple hardware and OS configurations
  •  Analysis of the results (performance)
Theoretical skills GPU computing
Practical skills  C, C++, OpenCL
Additional information


Title OpenGL Test Applications for GPU Energy and Power Consumptions
Student Boris Schmiedlehner
Language English
Supervisors Biagio Cosenza
Description Energy and power consumptions have become very important for nowadays architectures, and it is also important for graphics applications based on OpenGL to know how much energy consumes a given algorithm. In fact, different rendering algorithms, having similar performance (fps and latency) and visual quality may show very different energy and power consumptions on the GPU.
For instance, it’s known that the power consumption of an external memory access is substantially higher than both floating-point and integer operations.
The goal of this project is to code different test rendering algorithms (in OpenGL) and to run them on the GPU. Each proposed code will be evaluated according to its visual quality, performance, and energy consumption.
  • Familiarize with OpenGL and study common rasterization-based rendering algorithms
  • Implement a set of test applications focusing on memory accesses and computation
  • Measure Energy and Power consumptions for the implemented codes (details on how to measure power/energy will be given during the thesis)
Theoretical skills Computer Graphics
Practical skills Good C programming skills


Title Resource tracking tool using dynamic instrumentation
Students available
Supervisor Radu Prodan
Language German, English
Description The normal cycle of developing a program is to edit the source code, compile it, and then execute the resulting binary. However, sometimes this cycle can be too restrictive. We may wish to change the program while it is executing, and not have to recompile, relink, or even reexecute it to change the binary. The dynamic instrumentation technology permits the modifications of applications on-the-fly during their execution, and the Dyninst library provides a machine independent API to permit the creation of tools and applications using dynamic instrumentation.

The goal of this thesis is to develop a resource tracking tool based on dynamic instrumentation. Resources can be memory (i.e. monitoring memory allocation and deallocation), open files, System V interprocess communication (shared memory, message queues, semaphores), processes, pipes, POSIX threads, etc. The purpose of the tool is to test a program for correct behaviour.

  • Study C standard library and POSIX, System V and BSD system calls
  • Develop data structures to efficiently track resource usage
  • Provide instruments to track resource usage using dynamic instrumentation
  • Track correct/incorrect memory usage (i.e. writes to non-allocated memory, off-by-one errors, buffer overruns)
Theoretical skills Compiler construction, Operating systems
Practical skills C/C++, POSIX, UNIX
Additional information Dyninst


Webinterface for FLD
Number of students Martin Klotz
Supervisor Thomas Fahringer
Language English or German
Description The FLD – documentation of research done – is an university and inter-university collection of the active research done at the divers institutes. Conference papers as well as editor-ships and public works are recorded.
This bachelor thesis should create an interface for entering all necessary information into an own database, while it provides and validates(!) most information out of a given DOI-Link and IEEE/Springer/ACM/DBLP libraries. It should generate BibTeX and an overview/report.
The used back-end (frameworks/languages/own things/…) can be discussed.Die FLD – Forschungsleistungsdokumentation – ist eine universitaere und interuniversitaere Zusammenfassung der aktiven Forschung. Hier werden nicht nur Papers von Konferenzen eingetragen, sondern auch Editorenschaften und   Oeffentlichkeitsarbeit.
Diese Bachelorarbeit soll nun ein Interface zum Eintragen aller notwendigen Informationen anbieten, wobei moeglichst vieles automatisch aus DOI-Link bzw IEEE/Springer/ACM/DBLP-Bibliothek generiert und vor allem auch ueberprueft, werden soll. Die Implementation soll sowohl BibTeX als auch eine Uebersicht ausgeben koennen.
Welches Back-End verwendet werden soll (Framework/Sprache/eigenes…) ist dem Studenten, in Absprache mit dem Betreuer, selber ueberlassen.
  • Read background literature (given by supervisor)
  • Evaluate information required (with supervisor)
  • Build up a “simple” interface and the output.
  • Evaluate information retrievable by DBLP/…
  • Build a system to retrieve information
  • Test the tool.
Theoretical skills Web, Validation
Practical skills Web-developement (framework discussable), Databases