Available Thesis Topics
When applying for a thesis topic, follow the procedure described here and CC the advisor(s) in your email.
Click on a topic for more details.
Note: Some topics are marked as “B.Sc.” level, but we might make an extended version for M.Sc. students if you are really interested.
We currently do not accept new thesis students for this semester. If you want to do a thesis with us, please contact us for the winter semester. We will start taking new applications in July/August.
In a NUMA system, kernel text is distributed across all nodes. This causes latency overhead when userspace applications require access to kernel functions, because the memory might be located on another node. A solution has been proposed on the Linux Kernel Mailing List to tackle this problem, which is to replicate kernel text across all NUMA nodes.
Goal of this thesis: In this thesis, you’ll work directly inside the Linux Kernel. You will apply and test a provided kernel patchset. You’ll use virtualisation tools and a real NUMA server to execute and benchmark the new kernel. Based on your observations, you will propose improvements to the solution.
- Evaluate the patch with a set of defined benchmarks (or develop new benchmarks)
- Find ways to extend and improve the patch
Target: B.Sc./M.Sc. students
Prerequisites:
- Programming language: C
- Linux Kernel Programming
Advisor: Jérôme Coquisart
In the last few years, ARM-based CPUs have greatly improved in terms of performance, challenging the x86 domination, while also having better efficiency. However, for end users, legacy applications need to be ported to ARM in order to properly work. To avoid this work, one can use an emulator to execute x86 binaries on an ARM system.
Goals of the thesis: You will study the design of various x86-to-ARM emulators (QEMU, FEX, box64) and evaluate their performance. In addition to this, you will also study the quality of the translated code and optimisation techniques, and compare them.
Target: B.Sc./M.Sc. students
Prerequisites:
- Previous knowledge emulation/computer architecture is appreciated
- Previous experience in reverse engineering is appreciated
Advisor: Redha Gouicem
Page table management is one of the main contributor to the overall performance of NUMA systems. Page table self-replication is one of the recent techniques that aims at addressing the challenges toward efficient management of NUMA systems.
Goal & Steps: In this thesis, you will investigate the impact of recent advances in TLB & page table management on NUMA systems’ efficiency:
- Reviewing recent kernel improvements with a focus on page table & TLB management
- Implementing the state-of-the-art schemes on top of the latest Linux kernel release
- Benchmarking each scheme & investigating statistics such as TLB flushes and shootdowns
Target: B.Sc./M.Sc. students
Prerequisites:
- Proficiency in C programming
- Strong interest in kernel development
- Basic knowledge of OS & computer architecture (address translation, TLB, page table)
- Problem solving & research capability
Advisor: Mostafa Hadizadeh
Computational Storage Devices (CSDs) are emerging devices aiming to improve the performance of computer systems by reducing data movement between storage & computation subsystems. Contrary to Von-Neumann paradigm where the data was delivered to central processing unit for computation, recent computational paradigms such as in-memory processing and computational storage devices introduce an alternative approach. By offloading a part of computation to CSD, the system can get rid of extra data movements, and accordingly, achieve higher performance.
Goal & Steps: In this thesis, you will explore CSD and the opportunities provided by this new paradigm:
- Setting-up an emulation/simulation CSD frameworks: 1) Exploring existing frameworks, 2) Evaluating existing the frameworks in terms of compliance with the standards such SNIA and NVMe
- Literature review with concentration on application domains that suites CSD paradigm
- Evaluating the impact of advanced compression algorithms on overall application performance and device lifetime
Target: M.Sc.
Prerequisites:
- Proficiency in C/C++ programming
- Problem solving & research capability
Advisor: Mostafa Hadizadeh