Me presenting at the Multicore@Siemens 2016 conference -- Picture by Siemens

Me presenting at the Multicore@Siemens 2016 conference — Picture by Siemens

Yesterday, I gave an invited talk at the Multicore@Siemens 2016 conference in Nürnberg about the performance analysis of parallel applications. While in our high-performance computing center at JSC, we have to deal with large-scale scientific applications running on our world-class very scalable HPC systems like JURECA or JUQUEEN, software developers in general deal with much smaller systems.

Multicore@Siemens 2016 conference — Picture by Bernd Mohr

However, everyone has to deal with parallel (multicore) systems now: smartphones, tablets, or laptops nowadays typically have two or four compute cores and a graphics accelerator and the same is true for embedded computers in consumer devices like washing machines or process automation control systems. Multicore computers are everywhere and so every software developer has to learn and understand parallel programming in these days and quickly finds out: (a) it is complicated to get right and (b) it is even more complicated to make it efficient, that means that the software really makes use of all the computer power available by all the cores on the chip.

If you are interested in the topic, here are the slides. I gave a very similar talk at the Multicore Day 2016 organized by SICS in Stockholm, Sweden and they even videotaped it.

In my talk, I presented some of the results of the RAPID ((Runtime Analysis of Parallel applications for Industrial software Development) project, which is a collaboration between the Corporate Technology Multicore Expert Center of Siemens AG and Jülich Supercomputing Centre.

RAPID (Runtime Analysis of Parallel applications for Industrial software Development) project Logo

RAPID (Runtime Analysis of Parallel applications for Industrial software Development) project logo

The goal of this project was to adapt the measurement and analysis tools Score-P and Scalasca, which we develop at Jülich in my team for many years now, to the needs of industrial applications. As industrial applications are parallelized differently than scientific application codes, it meant that we had to integrate support for threading models like POSIX threads, Windows threads, Qt threads, and ACE threads into Score-P. In addition, support for leveraging task parallelism using MTAPI, the Multicore Association Tasking API,  was also developed. Besides supporting new programming paradigms, additional work had to be done with regards to portability. Although Score-P is already quite portable as it is running on all relevant supercomputer architectures, systems like Windows and operating systems for embedded systems had not been targeted so far, but are of course very important in an industrial context. On the analysis side, new methods targeting thread-based communication patterns, e.g., a lock contention analysis, were implemented in Scalasca. Meanwhile, our software was successfully used in the work of the Multicore Expert Center to understand and optimize important Siemens industry codes.

My new coffee mug from the Siemens Multicore Expert Center -- Picture By Bernd Mohr

My new coffee mug from the Siemens Multicore Expert Center — Picture By Bernd Mohr

At the end of my talk, they gave me a Siemens Multicore Expert Center coffee mug — not sure whether they read my blog article about my coffee mug collection, but anyhow, the mug will get a prominent spot in my bookshelf 😉

Wow! My own “official” blog! I never thought I would do this one time, but here we go.

[Bernd Mohr]

Me in front of our Jugene supercomputer (2009-2011) – Picture by Ralf-Uwe Limbach

For those who do not know me so well (yet), I am a scientist at the Jülich Supercomputing Centre (JSC) working on Supercomputing, High-Performance Computing and especially performance tools for parallel computing. Besides being researcher, I am also deputy head of the JSC division “Application support”.

I plan (for now) to blog about my research activities and projects, my visits to workshops, conferences and colleagues all over the world, and about my quest to organize SC17.

I am working on performance tools for High-Performance Computing (HPC) for almost 30 years  now, at a time the term “HPC” had not even been invented yet. I have been involved in the development of many open-source performance tools among them TAU, Vampir, KOJAK and currently Score-P and Scalasca. Supercomputers, the biggest and largest computer systems used to solve the world’s toughest problems, are a fascinating research area. The HPC computer hardware architectures, system software and programming models develop so quickly that my work never becomes boring and many exciting research challenges are still ahead of me. If you are interested to learn more about this, and you have some time, you could listen to my podcast about HPC – be aware it is 2.5 hours long and unfortunately, it is in German 🙁

End of 2014, I also got elected the be the General Chair of SC17, the world-largest international conference on high performance computing, networking, storage and analysis attended by over 10,000 people every year. As I am the first non-American after 28 years to organize this conference, it created quite some buzz, for example I made it into the 2015 list “People to Watch” from the online magazine HPCwire. As you can imagine, it is quite an effort to organize a 10,000 attendee multimillion U.S. dollar conference with the help of about 600 volunteers. I will write in the next three years about this effort in a series of blog articles tentatively called “Things you never wanted to learn about SC, but I tell you anyhow!” 😉 If you are interested in this topic, check out the SC15 blog article “10 Questions with SC17 General Chair Bernd Mohr”.

P.S. In case you wonder why the blog is called “Do you know Bernd Mohr?”: The story is that one of our lab directors (name known to the author ;-)) told me once that many times he visits new places or meets new persons, and tells them that he is from Jülich, they often ask him “So you know Bernd Mohr?”.