MSc thesis projects in Computer Engineering
Brain Inspired Computing-MSc BSc SemesterProjectHyperdimensional (HD) computing (HDC), also known as vector symbolic architecture (VSA), is a brain-inspired computing paradigm that has been demonstrated to be effective in (1) solving cognitive tasks, such as analogical reasoning, (2) learning domains, such as text classification, gesture recognition, and latent semantic analysis, and (3) privacy and security problems. The term hyperdimensional comes from the fact that in the HDC realm, we deal with large spaces and vectors, which mimic many neurons and synapses in the brain’s circuits.
The elements in the HDC paradigm have several features and properties, namely parallelism, simple operations/hardware friendliness, robustness, holistic representation, and randomness, that make them a suitable alternative to expensive DNN-based methods for some real-world applications.
In this project, we aim to evaluate the benefits of different HDC-based designs for several applications and develop software and/or hardware solutions to improve their accuracy, performance, and/or efficiency.
CIM and NDP-MSc BSc SemesterProjectData movement among computing and memory units in our current systems is a performance and/or energy bottleneck for almost all data-intensive workloads. Therefore, the computation in memory (CIM)1 paradigm has been reignited to alleviate this problem. The CIM paradigm advocates a shift from traditional processor-centric systems to a more data-centric one where we place some compute units closer to or inside the memory where our data resides.
This project aims to further enable the paradigm shift toward CIM-enabled systems by proposing novel algorithms and specialized logic units in-memory systems, focusing on emerging memory technologies.
Genomic Sequence Analysis-MSc BSc SemesterProjectBioinformatics is an interdisciplinary field aiming to understand large and complex biological data through mathematical and computational models that use computer programming. Bioinformatic studies consist of several genome analysis pipelines designed to enrich our understanding of a particular problem in genomics.
The fast advances in the computing units of computers in the past few decades have helped us with our bioinformatic studies by reducing the overall analysis time. However, even with the daily advances in the algorithms and our processing platforms (e.g., CPUs and GPUs), the timely and cost-efficient analysis of such pipelines still remains a challenge, mainly due to the sheer amount of new genomic data produced and the complex nature of the underlying algorithms.
Therefore, in this project, we aim to develop novel, fast, and accurate methods (at the algorithmic or hardware level) to analyze different stages of the genomic pipeline more quickly and efficiently. You will join our researchers to implement and explore new ideas, algorithms, and hardware architectures and evaluate them using real genomic data.
Stochastic Computing exploiting CIM-MSc BSc SemesterProjectStochastic computing (SC) is an alternative computing paradigm compared to traditional binary computing for various applications such as image and signal processing. Recent works show that SC is promising as it offers (1) elementary operations for complex arithmetic operations (e.g., bit-wise AND instead of multiplication) and (2) high tolerance to noise in the data and computation logic. Despite many advantages, SC still faces challenges, especially in dominant CMOS technologies. Simultaneously, applications SC tends to improve are typically data-intensive. Therefore, a design that uses emerging technologies, such as memristors and data-centric paradigms (widely known as Computation-in-Memory (CIM) or Processing-in-Memory (PIM)) is likely to solve the current problems o SC-based designs and take them one step further.
In this project, you aim to evaluate various applications and their data flow and develop an SC-based design at the algorithmic and/or hardware architecture level to improve the application's overall accuracy, performance, and/or efficiency.
UPMEM Improvements-MSc BSc SemesterProjectData movement among computing and memory units of our current systems has already become a significant performance and energy bottleneck for today's applications. An example of such applications and workloads are those for machine learning, graph processing, and computational biology.
To alleviate this problem, computation in memory (CIM)1 is a reignited computation paradigm that advocates a shift from traditional processor-centric systems to a more data-centric one where we place some compute units closer to or inside the memory, where our data resides.
UPMEM is the first real-world CIM-enabled architecture that is currently publicly available. The UPMEM CIM-enabled architecture enhances the existing DRAM chips with some DRAM Processing Units (DPUs), enabling an unprecedented memory bandwidth for workloads that need it.
In this direction, we aim to program and optimize various workloads on the UPMEM architecture and/or propose and implement architecture improvements for the future generation of UPMEM like CIM-enabled architectures.