Tutorials

There will be two tutorials, in the same schedule: 21st of June, 10h30-12h30 (part I) and 14h00-15h30 (part II).

Developing HPC applications with OpenMP and Task-Aware MPI - TAMPI

This course will explore how the OpenMP tasking model can effectively combine and leverage low-level and high-performance APIs such as MPI and CUDA to develop data-flow applications for distributed and heterogeneous systems.

The course will focus on these three topics: OpenMP tasking concepts, hybrid programming with OpenMP and Task-Aware MPI (TAMPI) library and heterogeneous programming with OpenMP and Task-Aware CUDA (TACUDA) library.

Program (part I) - Slides


Program (part II) - Slides

Tutorial Presenters

Kevin Sala received the Bachelor's Degree in Informatics Engineering and the M.Sc. in Innovation and Research in Informatics at the Universitat Politècnica de Catalunya (UPC) in 2016 and 2018, respectively. In 2015, he joined the System Tools and Advanced Runtimes group at the Barcelona Supercomputing Center (BSC). Since 2018, he is a Ph.D. Candidate at the UPC and a Research Engineer at BSC focused on parallel and distributed programming models for HPC systems.


In 2022, he joined the Mathematics and Computer Science (MCS) division at the Argonne National Laboratory (ANL) as a Research Aide Technical for a short-term intern appointment.


His research interests include parallel programming models, parallel architectures, and high-performance computing (HPC). He has published several papers about these topics in international conferences, journals, and workshops. 

Xavier Teruel received the Computer Engineering degree and the Master on Computer Architecture, Network and Systems at Technical University of Catalonia (UPC) in 2006 and 2008, respectively. Since 2006 he is working as a researcher within the Computer Science department at the Barcelona Supercomputing Center (BSC); and since 2018 he is co-leading the Best Practices for Performance and Programmability (BePPP) team.

 

Xavier has participated in several research projects in the framework of the European Union as well as in the OpenMP Language Committee since version 3.0. He spent three years, from 2007 to 2009, collaborating with the IBM XL compiler team in the IBM Markham Laboratory in Toronto, Canada. From 2010 to 2012 he also worked as a part-time lecturer in the UPC; and from 2012 he is participating in the teaching activities of the group.

 

His research interests include the areas of programming languages, compilers, applications, performance analysis, and co-design for high-performance computing. He has published several papers in international workshops, conferences and journals in these topics. 

(More details about the tutorial)

This tutorial focuses on the latest advances in processing-in-memory (PIM) technology, spanning both hardware and software, including novel PIM ideas, different tools and frameworks to conduct PIM research, and programming techniques and optimization strategies for PIM kernels.

We will (1) provide an introduction to PIM and the taxonomy of PIM systems, (2) give an overview and a rigorous analysis of existing PIM hardware from industry and academia, (3) provide and describe hardware and software infrastructures that can enable new and experienced researchers to conduct research in PIM systems, and (4) shed light on how to improve future PIM systems for emerging memory-bound workloads.


Program (part I)




Program (part II)


Tutorial Presenters

GERALDO F. OLIVEIRA (Graduate Student Member, IEEE) received the B.S. degree in computer science from the Federal University of Viosa, Viosa, Brazil, in 2015, and the M.S. degree in computer science from the Federal University of Rio Grande do Sul, Porto Alegre, Brazil, in 2017. He is currently pursuing the Ph.D. degree with Onur Mutlu with ETH Zürich, Zürich, Switzerland. His current research interests include system support for processing-in-memory and processing-using-memory architectures, data-centric accelerators for emerging applications, approximate computing, and emerging memory systems for consumer devices. He has several publications on these topics.


ONUR MUTLU received the B.S. degree in computer engineering and psychology from the University of Michigan, Ann Arbor, and the M.S. and Ph.D. degrees in ECE from The University of Texas at Austin. He is currently a Professor in computer science with ETH Zürich. He is also a Faculty Member with Carnegie Mellon University, where he previously held the Strecker Early Career Professorship. His current research interests include computer architecture, systems, hardware security, and bioinformatics. A variety of techniques, along with his group and collaborators, he has invented over the years have influenced industry and he have been employed in commercial microprocessors and memory/storage systems. He started the Computer Architecture Group, Microsoft Research (2006–2009), and he held various product and research positions with Intel Corporation, Advanced Micro Devices, VMware, and Google. He received the Google Open Source Peer Bonus Award, Huawei OlympusMons Award for Storage Systems Research, Google Security and Privacy Research Award, Persistent Impact Prize of the Non-Volatile Memory Systems Workshop, the Intel Outstanding Researcher Award, the IEEE High Performance Computer Architecture Test of Time Award, the IEEE Computer Society Edward J. McCluskey Technical Achievement Award, ACM SIGARCH Maurice Wilkes Award, the inaugural IEEE Computer Society Young Computer Architect Award, the inaugural Intel Early Career Faculty Award, the U.S. National Science Foundation CAREER Award, Carnegie Mellon University Ladd Research Award, faculty partnership awards from various companies, and a healthy number of best paper, ‘‘Top Pick’’ paper, and best artifact recognitions at various computer systems, architecture, and security venues. He is an ACM Fellow and an elected member of the Academy of Europe (Academia Europaea). His computer architecture and digital logic design course lectures and materials are freely available on YouTube (https://www.youtube.com/OnurMutluLectures), and his research group makes a wide variety of software and hardware artifacts freely available online (https://safari.ethz.ch/ and https://github.com/CMU-SAFARI). For more information visit the link (https://people.inf.ethz.ch/omutlu/).


MOHAMMAD SADROSADATI received the BSc, MSc, and PhD degrees in computer engineering from the Sharif University of Technology, Tehran, Iran, in 2012, 2014, and 2019, respectively.
From April 2017 to April 2018, he spent one year as an academic guest with ETH Zurich, hosted by Prof. Onur Mutlu during his Ph.D. program. He is currently a senior researcher and lecturer at ETH Zurich, working under the supervision of Prof. Onur Mutlu. His research interests include heterogeneous computing, processing-in-memory, memory systems, and interconnection networks. Due to his achievements and impact on
improving the energy efficiency of GPUs, he received Khwarizmi Youth Award, one of the most prestigious awards, as the first laureate, in 2020, to honor and embolden him to keep taking even bigger steps in his research career.


ATABERK OLGUN is a Computer Architecture researcher and a Ph.D. student in SAFARI Research Group at ETH Zürich led by Prof. Onur Mutlu. He obtained his BSc and MSc degrees from TOBB ETÜ under Prof. Oğuz Ergin’s supervision. His research interests lie primarily in the area of Computer Architecture. He is interested in designing reliable (and as performance and energy efficient) memory systems from the ground up. These days, he is trying to develop a better understanding of the RowHammer problem and come up with more efficient system-level solutions to it.