associate senior lecturer at Department of Information Technology, Division of Computer Systems
My research interests include compile-time and runtime code analysis and transformation, optimizations for performance and energy efficiency and software-hardware co-designs. I conduct research on compiler techniques to optimize energy efficiency by a decoupled access-execute model also available open source DAEDAL, and on the interaction between compiler and hardware, to achieve new levels of performance and energy efficiency. One such example is a compiler-assisted cache coherence protocol.
Keywords: compile-time code analysis optimizations parallel programming software-hardware co-designs energy efficiency performance
Also available at
I received my Bachelor degree in Computer Science, from Babes-Bolyai University, Cluj-Napoca, Romania (First Class Honours Degree), in 2008, followed by a Master degree in Computer Science, from Johannes-Keppler University, Linz, Austria, in 2009. I pursued my PhD studies in France researching in the area of automatic parallelization, by adapting the polyhedral model for dynamic thread level speculation (TLS), and I received the Doctoral degree in Computer Science, from the University of Strasbourg, France in 2012 (Advisors Ph. Clauss and V. Loechner). Next, I was a postdoctoral fellow in Uppsala University, Sweden (2012 - 2014) within UPMARC, a researcher (forskare) in UART, Uppsala University (2014 - 2015) and continued as Associate Senior Lecturer, since May 2015. I was a visiting researcher in University of Murcia, Spain (April-July 2015 and April-July 2016).
News: I was granted a VR starting grant (Etableringsbidrag) of 3.4 MSEK for my project "Optimizing for performance and energy efficiency with speculative compilers and co-designed hardware" (2017-2020).
I had the chance to work closely with a very good team of undergraduate and graduate students that contributed to the projects decoupled access-execute and the suite of compiler-assisted cache coherence protocols:Students
Ph.D., Kim-Anh Tran, Uppsala University: Compile-time analysis and optimizations for power efficient architectures (main advisor, co-advisor Stefanos Kaxiras)
Ph.D., Christos Sakalis, Uppsala University: Software-hardware co-design with a focus on approximate computing (co-advisor, main advisor Magnus Sjalander)
Ph.D., Gustaf Borgström, Uppsala University: Cache simulation methods (co-advisor, main advisor: David Black-Schaffer)
Ph.D., Francisco Fernández, Uppsala University: Programming language extensions to guide compile-time code transformations (co-advisor, main advisor Dave Clarke)
Andreas Scherman, Extending the scope of compiler optimizations across synchronization points
Ahmad Awada, Automatic compile-time transformation of CUDA partitioned kernels for co-execution on GPUs
Per Ekemark, Advanced xDRF detection and real-world DAE evaluation
Erik Österberg, Profiling memory accesses on the ODROID-XU4
David Escher, Crowd simulation case study for an active-object language
Wenting Jin, Feedback compilation for decoupled access-execute techniques
Jonatan Waern, Automatic detection of xDRF regions
Dimitrios Giannakopoulos, Parallel Texture Synthesis utilizing GPU
- Georgios Petrousis, MSc - An evaluation of compile-time techniques for energy efficiency (2016)
- Andreas Scherman, BSc - Early evaluation of branches via decoupled access-execute to enable super-block optimizations (2016)
- Per Ekemark, BSc - Static multi-versioning for efficient prefetching (2016)
- Anton Weber, MSc - Decoupled Access-Execute on ARM big.LITTLE (2016)
- Alexander Fougner, MSc - Increasing energy efficiency by instruction scheduling and software prefetching (2016)
- Georgios Zacharopoulos, MSc - Employing Hardware Transactional Memory in Prefetching for Energy Efficiency (2015)
- Martin Hagelin, MSc - Optimizing Memory Management with Object-Local Heaps (2015)
- Jonatan Waern, BSc - Profiling-Assisted Prefetching with Just-In-Time Compilation (2014)
Please contact the directory administrator for the organization (department or similar) to correct possible errors in the information.