Skip to main content

Laura M

We had a catch up with Dr Laura Morgenstern who recently joined our department of Computer Science.

Tell us a bit about yourself and your research interests?

I’ve always had an interest in solving scheduling problems. For instance, back in school when it came to squeezing as many homework assignments as possible into ridiculously short morning and lunch breaks. Consequentially, I studied computer science and developed a passion for parallel computing early on. My journey into High Performance Computing (HPC) really gained momentum when I joined the Student Cluster Competition team at Chemnitz University of Technology. Today, I supervise Durham University’s team in the hope to inspire the next generation of HPC experts.

When did you join us and what is your role at Durham University?

I joined Durham University in January 2022 as assistant professor at the Department of Computer Science.

What are the projects/research you are currently working on?

My research aims at a programming model that allows software engineers to leverage the massive parallelism of current and future computers more easily and efficiently.

When an algorithm cannot be “trivially” subdivided into sufficiently many independent operations to keep all cores of a processor busy, it loses out on using the processor’s full computational power. To tackle this challenge, task parallelism has been invented. Task graphs allow us to describe all operations along with their dependencies within an algorithm. Hence, they enable us to identify all tasks that can theoretically be done in parallel.

However, scheduling and executing these task graphs efficiently is a highly complex problem, and therefore an active field of research in HPC and theoretical computer science. My current focus is on task graph scheduling on GPUs (Graphics Processing Units) since they are much more capable than to be used for rendering your occasional video game only.

What is interesting about your projects/research?

I am fascinated by the paradox that so many things in our lives are concurrent systems – say, cooking a multi-course dinner or working through your daily to-do list, and yet, reasoning about concurrency and writing parallel software is still inherently complex.

What is the scientific and societal relevance of your research?

A prototypical implementation of my work in the context of molecular dynamics simulations has shown a speed-up in the order of a magnitude in comparison to state-of-the-art approaches. In the long run, I hope that my research can help to accelerate software in diverse domains of industry and academia.

What are your plans for future research/study?

In the near future, I aim to make my programming model more intelligible such that it can be applied to new applications quicker. In the long run, I aim to combine the CPU and GPU programming model to relieve software developers from writing a version of their software for each architecture.

Any interesting hobbies/passion outside of work?

I love learning and creating new things – be it, learning a new (programming) language, creating a new recipe, or trying out yet another painting technique.

This is the image alt text