Hi! My name is Stefano. I was born and raised in an Italian-Greek family in Parma, a lovely city in the North of Italy, famous for the food (the delicious Parmesan cheese and Parma ham) and used-to-be-good football team (some of the football enthusiasts might remember Tomas Brolin, who is our idol in Parma). Since 2021, I am also a Swedish citizen.
To people asking why to pursue a career in research and teaching, I would say that higher education and research are my airplanes (to rephrase one of the Red Hot Chili Peppers songs): I got to know and love the most interesting people I could never meet if I decided to stay in Parma. I saw many breathtaking places all the around the world. After high school, I moved to Torino and studied Nuclear Engineering at the Politecnico di Torino where I graduated in 2002. I got a once-in-lifetime chance to learn how to do research at the Los Alamos National Laboratory, thanks to Prof. Giovanni Lapenta. After four years in the enchanted land, also known as New Mexico, I moved to Illinois to pursue a Ph.D. in Nuclear Engineering at the University of Illinois at Urbana-Champaign under the supervision of Prof. Rizwan-Uddin. I did the last year of my Ph.D. as an intern at the Lawrence Berkeley National Laboratory in the beautiful bay area. I obtained my Ph.D. in 2010 and moved back to Europe to work at KULeuven in Belgium. Since 2012, I have worked in Sweden at the KTH: I started first at the PDC under the supervision of Prof. Erwin Laure and became Assistant Professor in High-Performance Computing in 2014 at CST. I became Associate Professor in High-Performance Computing in 2017. Since 2018, I have been a computer science docent specializing in High-Performance Computing. From April to June 2021, I am visiting Professor at Politecnico di Milano in Italy.
At KTH, I am a researcher, leader of the KTH HPC group, teacher, and project manager.
I have always been fascinated by the idea of using the most advanced technologies, such as supercomputers, to model physical reality through extreme-scale simulations.
At KTH, I lead the KTH HPC group.
Our research is at the intersection of programming models, computer architectures (GPUs, FPGAs, and heterogeneous memory and storage systems), scientific computing (computation fluid dynamics, radiation treatment planning, and computational plasma physics), and deep-learning on the road to the next supercomputing milestone called the exascale era (supercomputer that will deliver exa = 10^18 floating-point operations per second on the HPC benchmark called HPL).
Some of my recent papers:
- Markidis, Stefano. On Physics-Informed Neural Networks for Quantum Computers.Frontiers(2022).
- Markidis, Stefano. The old and the new: can physics-informed deep-learning replace traditional linear solvers?Frontiers in Big Data, p.92.
- Murugan, Natarajan Arul, Artur Podobas, Davide Gadioli, Emanuele Vitali, Gianluca Palermo, and Stefano Markidis. "A review on parallel virtual screening software for high-performance computers."Pharmaceuticals 15, no. 1 (2022): 63.
I am also known as the principal architect of the iPIC3D code, a C++ implicit Particle-in-Cell (PIC) code for space physics simulations, and an inventor of new PIC numerical methods, such as:
- Markidis S, Olshevsky V, Sishtla CP, Chien SW, Laure E, Lapenta G. PolyPIC: the Polymorphic Particle-in-Cell Method for Fluid-Kinetic Coupling. Frontiers in Physics. 2018
- Markidis S, Henri P, Lapenta G, Rönnmark K, Hamrin M, Meliani Z, Laure E. The fluid-kinetic particle-in-cell method for plasma simulations. Journal of Computational Physics. 2014
- Markidis S, Lapenta G. The Energy Conserving Particle-in-Cell Method. Journal of Computational Physics. 2011.
In 2005 and 2017, I received the prestigious R&D100 award.
We also receive the best paper awards at AsHES, EuroMPI, HiPC, and IPDPS.
At KTH, I am responsible for the High-Performance Computing sub-track in the Computer Science program.
I am course responsible, teacher, and examiner for the main courses of the HPC track:
- DD2358 -Introduction to High-Performance Computing - P3. Topics: Computer Architecture for HPC, Fortran, Dynamic Allocation in C/C++, Unit Test, Docker, Profiler, HPC Libraries.
- DD2356 -Methods in High-Performance Computing - P4. Topics: Performance Modeling, OpenMP and Shared Memory Programming, MPI, and Distributed Computing.
- DD2360 -Applied GPU Programming - P2. Topics: GPU Architecture, Basic and Advanced CUDA, OpenCL.
- DD2375 - Project Course in High-Performance Computing
Do not hesitate to contact me if you have any questions about the HPC sub-track and the HPC courses.
Maxwell's equations are my favorite, and I teach how to solve them numerically in DD2370 - Computational Methods for Electromagnetics.
I am also an examiner for the MS theses in Computer Science and an advisor for the BS theses.
From 2012 to 2019, I was the co-chair and main organizer of the PDC Summer School at KTH.
Since 2012, I have participated in the significant European effort to deliver an exascale system and associated software. I started with being the programming model work-package leader for the CRESTA project and the scientific coordinator and project manager of the EPiGRAM project. I was also KTH PI for the Intertwine and SAGE projects.
Currently, I am excited to lead as coordinator of the H2020 FET-HPC EPiGRAM-HS project investigating parallel programming models for heterogeneous systems (GPUs, FPGA, non-volatile memories, and HBM).
I am KTH PI for
- Sage2: project for parallel I/O and heterogeneous storage systems
- VESTEC: a project for the visual exploration and toolkit for extreme Computing
I am co-PI of the SESSI MCP in the SeRC.
Starting in April 2021, I will be KTH PI for three new EuroHPC projects: DEEP-SEA, IO-SEA, and ADMIRE.
I chaired the organization of the prestigious 2021 HPDC conference together with Prof. Erwin Laure.
Working with us
Inclusivity is our commitment: we speak about it, we are open-minded and listener, and eager to know you.
Applied GPU Programming (DD2360), examiner, teacher | Course web
Applied GPU Programming (FDD3360), examiner, course responsible, teacher | Course web
Computational Methods for Electromagnetics (DD2370), examiner, course responsible | Course web
Degree Project in Computer Science and Engineering, First Cycle (DA150X), assistant | Course web
Degree Project in Computer Science and Engineering, Second Cycle (DA231X), examiner | Course web
Degree Project in Computer Science and Engineering, Second Cycle (DA239X), examiner | Course web
Degree Project in Computer Science and Engineering, Second Cycle (DA250X), examiner | Course web
Degree Project in Computer Science and Engineering, specialising in ICT Innovation, Second Cycle (DA256X), examiner | Course web
Degree Project in Computer Science and Engineering, specialising in ICT Innovation, Second Cycle (DA258X), examiner | Course web
Degree Project in Computer Science and Engineering, specializing in Industrial Management, Second Cycle (DA235X), examiner | Course web
Degree Project in Computer Science and Engineering, specializing in Machine Learning, Second Cycle (DA233X), examiner | Course web
Degree Project in Computer Science and Engineering, specializing in Systems, Control and Robotics, Second Cycle (DA236X), examiner | Course web
Degree Project in Electrical Engineering, specializing in Systems, Control and Robotics, Second Cycle (EA236X), examiner | Course web
Introduction to High Performance Computing (DD2358), examiner, course responsible, teacher | Course web
Methods in High Performance Computing (DD2356), examiner, course responsible, teacher | Course web
Methods in High-Performance Computing (FDD3256), examiner, course responsible, teacher | Course web
Parallel Computing: Theory - Hardware - Software with Special Focus on Multi-Core Programming (FDD3003), teacher, assistant | Course web
Project Course in High-Performance Computing (DD2375), examiner, course responsible, teacher | Course web
Quantum Computing for Computer Scientists (FDD3280), examiner, course responsible, teacher | Course web
Quantum Computing for Computer Scientists (DD2367), examiner | Course web