Demonstration venue · read-only. Every page can be browsed; the buttons that would change it are switched off. Create an account to run TaxoReview on your own data. A simulation from public publication records: the people listed were not invited and did not agree to review.
? Tutorial for this page

Bernd Mohr

dblp:m/BerndMohr · DBLP profile ↗
← Back
31ranked-venue papers
7as first author
1since 2021 · last 2022
0000-0001-9960-5867ORCID · verified

Domains — the database's venue-derived domains; a paper can count in several

Systems, architecture and hardware · 29 · 6 first-author · 1 since 2021

Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.

Computer architecture, parallel and distributed computing, and storage systems
4 papers
Performance modeling and evaluation · 57% Parallel and multicore computing · 28% High-performance computing · 14%
Software engineering, system software, and programming languages
3 papers
Program analysis · 71% Runtime systems and virtual machines · 14% Software maintenance and evolution · 11%

Topics — the 9 heaviest of 12, each with the papers that count most for it

TopicWeightPapersLastEvidence papers
Performance modeling and evaluation
performance analysis tools
0.122006
M09 - Program analysis tools for massively parallel applications: how to achieve highest performance · SC 2006
S11 - Principles and practice of experimental performance measurement and analysis of parallel applications · SC 2006
Parallel and multicore computing › parallel computing
parallel program analysis
0.112006
M09 - Program analysis tools for massively parallel applications: how to achieve highest performance · SC 2006
Program analysis
dynamic analysis
0.012000
A Tool Framework for Static and Dynamic Analysis of Object-Oriented Software with Templates · SC 2000
Program analysis
static analysis
0.012000
A Tool Framework for Static and Dynamic Analysis of Object-Oriented Software with Templates · SC 2000
High-performance computing
performance optimization
0.012006
M09 - Program analysis tools for massively parallel applications: how to achieve highest performance · SC 2006
Performance modeling and evaluation
performance monitoring
0.011994
Distributed Performance Monitoring: Methods, Tools, and Applications · IEEE Trans. Parallel Distributed Syst. 1994
Runtime systems and virtual machines
parallel runtime systems
0.011993
Implementing a parallel C++ runtime system for scalable parallel systems · SC 1993
Parallel and multicore computing
parallel programming models
0.011993
Implementing a parallel C++ runtime system for scalable parallel systems · SC 1993
Debugging and program repair
performance debugging
0.011994
Distributed Performance Monitoring: Methods, Tools, and Applications · IEEE Trans. Parallel Distributed Syst. 1994

Methods — techniques the papers use, named apart from their topics

profiling · 0.1performance instrumentation · 0.1automatic performance analysis · 0.1template handling · 0.0program database toolkit · 0.0trace analysis · 0.0hybrid monitoring · 0.0
YearPublicationVenuePosition
2022 Early Experiences of Noise-Sensitivity Performance Analysis of a Distributed Deep Learning Framework
abstract
Deep Learning (DL) applications are used to solve complex problems efficiently. These applications require complex neural network models composed of millions of parameters and huge amounts of data for proper training. This is only possible by parallelizing the necessary computations by so-called distributed deep learning (DDL) frameworks over many GPUs distributed over multiple nodes of a HPC cluster. These frameworks mostly utilize the compute power of the GPUs and use only a small portion of the available compute power of the CPUs in the nodes for I/O and inter-process communication, leaving many CPU cores idle and unused. The more powerful the base CPU in the cluster nodes, the more compute resources are wasted. In this paper, we investigate how much of this unutilized compute resources could be used for executing other applications without lowering the performance of the DDL frameworks. In our experiments, we executed a noise-generation application, which generates a very-high memory, network or I/O load, in parallel with DDL frameworks, and use HPC profiling and tracing techniques to determine whether and how the generated noise is affecting the performance of the DDL frameworks. Early results indicate that it might be possible to utilize the idle cores for jobs of other users without affecting the performance of the DDL applications in a negative way.
Elvis Rojas, Michael Knobloch, Nour Daoud, Esteban Meneses, Bernd Mohr
CLUSTER5
2014 Performance Measurement and Analysis of Transactional Memory and Speculative Execution on IBM Blue Gene/Q
Peter Philippen, Michael Knobloch, Bernd Mohr
Euro-Par4
2014 Modeling CPU Energy Consumption of HPC Applications on the IBM POWER7
abstract
Energy consumption optimization of HPC applications inherently requires measurements for reference and comparison. However, most of today's systems lack the necessary hardware support for power or energy measurements. Furthermore, in-band data availability is preferred for specific optimization techniques such as auto-tuning. For this reason, we present in-band energy consumption models for the IBM POWER7 processor based on hardware counters. We demonstrate that linear regression is a suitable means for modeling energy consumption, and we rely on already available, high-level benchmarks for training instead of self-written or hand-tuned micro-kernels. We compare modeling efforts for different instruction mixes caused by two compilers (GCC and IBM XL) as well as various multi-threading usage scenarios, and validate across our training benchmarks and two real-world applications. Results show mean errors of approximately 1% and overall max errors of 5.3% for GCC.
Philipp Gschwandtner, Michael Knobloch, Bernd Mohr, Dirk Pleiter, Thomas Fahringer
PDP3
2010 The Scalasca performance toolset architecture
abstract
Abstract Scalasca is a performance toolset that has been specifically designed to analyze parallel application execution behavior on large‐scale systems with many thousands of processors. It offers an incremental performance‐analysis procedure that integrates runtime summaries with in‐depth studies of concurrent behavior via event tracing, adopting a strategy of successively refined measurement configurations. Distinctive features are its ability to identify wait states in applications with very large numbers of processes and to combine these with efficiently summarized local measurements. In this article, we review the current toolset architecture, emphasizing its scalable design and the role of the different components in transforming raw measurement data into knowledge of application execution behavior. The scalability and effectiveness of Scalasca are then surveyed from experience measuring and analyzing real‐world applications on a range of computer systems. Copyright © 2010 John Wiley & Sons, Ltd.
Markus Geimer, Felix Wolf 0001, Brian J. N. Wylie, Erika Ábrahám, Daniel Becker 0001, Bernd Mohr
Concurr. Comput. Pract. Exp.6
2010 Performance measurement and analysis tools for extremely scalable systems
abstract
Abstract High‐performance computing systems continue to employ more and more processor cores. Current typical high‐end machines in industry, university, and government research laboratory computing centers feature thousands of computing cores. While these machines promise ever more compute power and memory capacity to tackle today's complex simulation problems, they force application developers to greatly enhance the scalability of their codes to be able to exploit it. To better support them in their porting and tuning process, many parallel‐tools research groups have already started to work on scaling their methods, techniques, and tools to extreme processor counts. In this paper, we survey existing profiling and tracing tools, report on our experience in using them in extreme scaling environments, review working and promising new methods and techniques, and discuss strategies for solving open issues and problems. Copyright © 2010 John Wiley & Sons, Ltd.
Bernd Mohr, Brian J. N. Wylie, Felix Wolf 0001
Concurr. Comput. Pract. Exp.1
2009 Tools for scalable performance analysis on Petascale systems
abstract
Tools are becoming increasingly important to efficiently utilize the computing power available in contemporary large scale systems. The drastic increase in the size and the complexity of systems require tools to be scalable while producing meaning full and easily digestible information that may help the user pin-point problems at scale. The goal of this tutorial is to introduce some state-of-the-art performance tools from three different organizations to a diverse audience group. Together these tools provide a broad spectrum of capabilities necessary to analyze the performance of scientific and engineering applications on a variety of large and small scale systems. These tools include: • IBM High Performance Computing Toolkit: The IBM High Performance Computing Toolkit is a suite of performance-related tools and libraries to assist in application tuning. This toolkit is an integrated environment for performance analysis of sequential and parallel applications using the MPI and OpenMP paradigms. Scientists can collect rich performance data from selected parts of an execution, digest the data at a very high level, and plan for improvements within a single unified interface. It provides a common framework for IBM's mid-range server offerings, including pSeries and eSeries servers and Blue Gene systems, on both AIX and Linux. More information cab be found here: http://domino.research.ibm.com/comm/research_projects.nsf/pages/hpct.index.html • Scalable Performance Analysis of Large-Scale Applications (SCALASCA) Toolset: Scalasca is an open-source toolset that can be used to analyze the performance behavior of parallel applications and to identify opportunities for optimization. It has been specifically designed for use on large-scale systems including BlueGene and Cray XT, but is also well-suited for small- and medium-scale HPC platforms. Scalasca supports an incremental performance-analysis procedure that integrates runtime summaries with in-depth studies of concurrent behavior via event tracing, adopting a strategy of successively refined measurement configurations. A distinctive feature is the ability to identify wait states that occur, for example, as a result of unevenly distributed workloads. Especially when trying to scale communication-intensive applications to large processor counts, such wait states can present severe challenges to achieving good performance. Scalasca is developed by the Julich Supercomputing Centre and available under the New BSD open-source license. More information can be found here: http://www.scalasca.org • CEPBA Toolkit: The CEPBA-tools environment is a trace based analysis environment consisting with two major components, Paraver, a browser for traces obtained from a parallel run and Dimemas , a simulator to rebuild the time behavior of a parallel program from a trace. More information can be found here: http://www.bsc.es/plantillaF.php?cat_id=52
I-Hsin Chung, Seetharami R. Seelam, Bernd Mohr, Jesús Labarta
IPDPS3
2009 A scalable tool architecture for diagnosing wait states in massively parallel applications
Markus Geimer, Felix Wolf 0001, Brian J. N. Wylie, Bernd Mohr
Parallel Comput.4
2007 Automatic Trace-Based Performance Analysis of Metacomputing Applications
abstract
The processing power and memory capacity of independent and heterogeneous parallel machines can be combined to form a single parallel system that is more powerful than any of its constituents. However, achieving satisfactory application performance on such a metacomputer is hard because the high latency of inter-machine communication as well as differences in hardware of constituent machines may introduce various types of wait states. In our earlier work, we have demonstrated that automatic pattern search in event traces can identify the sources of wait states in parallel applications running on a single computer. In this article, we describe how this approach can be extended to metacomputing environments with special emphasis on performance problems related to inter-machine communication. In addition, we demonstrate the benefits of our solution using a real-world multi-physics application.
Daniel Becker 0001, Felix Wolf 0001, Wolfgang Frings, Markus Geimer, Brian J. N. Wylie, Bernd Mohr
IPDPS6
2007 A test suite for parallel performance analysis tools
abstract
Abstract Parallel performance analysis tools must be tested as to whether they perform their task correctly, which comprises at least three aspects. First, it must be ensured that the tools neither alter the semantics nor distort the run‐time behavior of the application under investigation. Next, it must be verified that the tools collect the correct performance data as required by their specification. Finally, it must be checked that the tools perform their intended tasks and detect relevant performance problems. Focusing on the latter (correctness) aspect, testing can be done using synthetic test functions with controllable performance properties, possibly complemented by real‐world applications with known performance behavior. A systematic test suite can be built from synthetic test functions and other components, possibly with the help of tools to assist the user in putting the pieces together into executable test programs. Clearly, such a test suite can be highly useful to builders of performance analysis tools. It is surprising that, up until now, no systematic effort has been undertaken to provide such a suite. In this paper we describe the APART Test Suite (ATS) for checking the correctness (in the above sense) of parallel performance analysis tools. In particular, we describe a collection of synthetic test functions which allows one to easily construct both simple and more complex test programs with desired performance properties. We briefly report on experience with MPI and OpenMP performance tools when applied to the test cases generated by ATS. Copyright © 2006 John Wiley & Sons, Ltd.
Michael Gerndt, Bernd Mohr, Jesper Larsson Träff
Concurr. Comput. Pract. Exp.2
2007 A framework for performance analysis of Co-Array Fortran
abstract
Abstract Co‐Array Fortran (CAF) is a parallel programming extension to Fortran that provides a straightforward mechanism for representing distributed memory communication and, in particular, one‐sided communication. Although this integration of communication primitives with the language improves programmer productivity, this new level of abstraction makes the analysis of CAF performance mode difficult. This situation is due, in part, to a lack of tools for the analysis of CAF applications. In this paper, we present an extension to the KOJAK toolkit based on a source‐to‐source translator that supports performance instrumentation, data collection, trace generation, and performance visualization of CAF applications. We illustrate this approach with a performance visualization of a CAF version of the Halo kernel benchmark using the VAMPIR event trace visualization tool. Copyright © 2007 John Wiley & Sons, Ltd.
Bernd Mohr, Luiz De Rose, Jeffrey S. Vetter
Concurr. Comput. Pract. Exp.1
2007 Automatic analysis of inefficiency patterns in parallel applications
abstract
Abstract Event tracing is a powerful method for analyzing the performance behavior of parallel applications. Because event traces record the temporal and spatial relationships between individual runtime events, they allow application developers to analyze dependences of performance phenomena across concurrent control flows. However, in view of the large amounts of data generated on contemporary parallel machines, the depth and coverage of a purely manual analysis is often limited. Our approach automatically searches event traces for patterns of inefficient behavior, classifies detected instances by category, and quantifies the associated performance penalty. This enables developers to study the performance of their applications at a high level of abstraction, while requiring significantly less time and expertise than a manual analysis. Copyright © 2006 John Wiley & Sons, Ltd.
Felix Wolf 0001, Bernd Mohr, Jack J. Dongarra, Shirley Moore
Concurr. Comput. Pract. Exp.2
2007 Selected papers from EuroPVM/MPI 2006
Bernd Mohr, Jesper Larsson Träff, Joachim Worringen
Parallel Comput.1
2006 Specification of Inefficiency Patterns for MPI-2 One-Sided Communication
Andrej Kühnal, Marc-André Hermanns, Bernd Mohr, Felix Wolf 0001
Euro-Par3
2006 Topic 2: Performance Prediction and Evaluation
Jesús Labarta, Bernd Mohr, Allan Snavely, Jeffrey S. Vetter
Euro-Par2
2006 S11 - Principles and practice of experimental performance measurement and analysis of parallel applications
abstract
Application developers are facing new and more complicated performance tuning and optimization problems as architectures become more complex. In order to achieve reasonable performance on these systems, HPC users need help from performance analysis tools. In this tutorial we will introduce the principles of experimental performance instrumentation, measurement, and analysis, with an overview of the major issues, techniques, and resources in performance tools development, as well as an overview of the performance measurement tools available from vendors and research groups. In addition, we will discuss cutting edge issues, such as automatic performance analysis and analysis of grid applications. Our goals are twofold: first, we will provide background information about methods and techniques for performance measurement and analysis, including practical tricks and tips, so that you can exploit available tools effectively and efficiently. Second, you will learn about simple portable techniques for measuring the performance of your parallel application.
Luiz De Rose, Bernd Mohr
SC2
2006 M09 - Program analysis tools for massively parallel applications: how to achieve highest performance
abstract
Today's HPC environments are increasingly complex in order to achieve highest performance. Hardware platforms introduce features like out-of-order execution, multi-level caches, multi-cores, non-uniform memory access etc. Application software combines OpenMP, MPI, optimized libraries and various types of compiler optimization to exploit potential performance.To reach a reasonable percentage of the theoretical peak performance, three fundamental steps need to be accomplished. First, correctness must be guaranteed especially during the course of optimization. Second, the actual performance achieved needs to be determined. In particular the contributions/limitations of all sub-systems involved (CPU, memory, network, I/O) have to be identified. Third, actual optimization can only be successful with the previously obtained knowledge.Those steps are by no means trivial. There are sophisticated tools beyond simple profiling to support the HPC user. The tutorial introduces a variety of such tools: it shows how they play together and how they scale with long-running massively parallel cases.
Andreas Knüpfer, Dieter Kranzlmüller, Bernd Mohr, Wolfgang E. Nagel
SC3
2005 Event-Based Measurement and Analysis of One-Sided Communication
Marc-André Hermanns, Bernd Mohr, Felix Wolf 0001
Euro-Par2
2005 A Performance Measurement Infrastructure for Co-array Fortran
Bernd Mohr, Luiz De Rose, Jeffrey S. Vetter
Euro-Par1
2005 Automatic Experimental Analysis of Communication Patterns in Virtual Topologies
abstract
Automatic pattern search in event traces is a powerful method to identify performance problems in parallel applications. We demonstrate that knowledge about the virtual topology, which defines logical adjacency relationships between processes, can be exploited to explain the occurrence of inefficiency patterns in terms of the parallelization strategy used in an application. We show correlations between higher-level events related to a parallel wavefront scheme and wait states identified by our pattern analysis. In addition, we visually expose relationships between pattern occurrences and the topological characteristics of the affected processes.
Nikhil Bhatia, Fengguang Song, Felix Wolf 0001, Jack J. Dongarra, Bernd Mohr, Shirley Moore
ICPP5
2004 Evaluating OpenMP Performance Analysis Tools with the APART Test Suite
Michael Gerndt, Bernd Mohr, Jesper Larsson Träff
Euro-Par2
2004 Profiling and Tracing OpenMP Applications with POMP Based Monitoring Libraries
Luiz De Rose, Bernd Mohr, Seetharami R. Seelam
Euro-Par2
2004 Efficient Pattern Search in Large Traces Through Successive Refinement
Felix Wolf 0001, Bernd Mohr, Jack J. Dongarra, Shirley Moore
Euro-Par2
2003 KOJAK - A Tool Set for Automatic Performance Analysis of Parallel Programs
Bernd Mohr, Felix Wolf 0001
Euro-Par1
2003 Initial Design of a Test Suite for Automatic Performance Analysis Tools
abstract
Automatic performance tools must of course be tested as to whether they perform their task correctly. Because performance tools are meta-programs, tool testing is more complex than ordinary program testing and comprises at least three aspects. First, it must be ensured that the tools do neither alter the semantics nor distort the run-time behavior of the application under investigation. Next, it must be verified that the tools collect the correct performance data as required by their specification. Finally, it must be checked that the tools indeed perform their intended tasks and detect relevant performance problems. Focusing on the latter (correctness) aspect, testing can be done using synthetic test functions with controllable performance properties, and/or real world applications with known performance behavior. A systematic test suite can be built from synthetic test functions and other components, possibly with the help of tools to assist the user in putting the pieces together into executable test programs. Clearly, such a test suite can be highly useful to builders of performance analysis tools. It is surprising that up till now, no systematic effort has been undertaken to provide such a suite. In this paper we discuss the initial design of a test suite for checking the correctness (in the above sense) of automatic performance analysis tools. In particular, we describe a collection of synthetic test functions which allows to easily construct both simple and more complex test programs with desired performance properties.
Bernd Mohr, Jesper Larsson Träff
HIPS1
2003 Automatic performance analysis of hybrid MPI/OpenMP applications
Felix Wolf 0001, Bernd Mohr
J. Syst. Archit.2
2002 Design and Prototype of a Performance Tool Interface for OpenMP
Bernd Mohr, Allen D. Malony, Sameer Shende, Felix Wolf 0001
J. Supercomput.1
2001 Topic 02: Performance Evaluation and Prediction
Allen D. Malony, Graham D. Riley, Bernd Mohr, J. Mark Bull, Tomàs Margalef
Euro-Par3
2000 Automatic Performance Analysis of MPI Applications Based on Event Traces
Felix Wolf 0001, Bernd Mohr
Euro-Par2
2000 A Tool Framework for Static and Dynamic Analysis of Object-Oriented Software with Templates
abstract
The developers of high-performance scientific applications often work in complex computing environments that place heavy demands on program analysis tools. The developers need tools that interoperate, are portable across machine architectures, and provide source-level feedback. In this paper, we describe a tool framework, the Program Database Toolkit (PDT), that supports the development of program analysis tools meeting these requirements. PDT uses compile-time information to create a complete database of high-level program information that is structured for well-defined and uniform access by tools and applications. PDT’s current applications make heavy use of advanced features of C++, in particular, templates. We describe the toolkit, focussing on its most important contribution -- its handling of templates -- as well as its use in existing applications.
Kathleen A. Lindlan, Janice E. Cuny, Allen D. Malony, Sameer Shende, Bernd Mohr, Reid D. Rivenburgh, Craig Edward Rasmussen
SC5
1994 Distributed Performance Monitoring: Methods, Tools, and Applications
abstract
A method for analyzing the functional behavior and the performance of programs in distributed systems is presented. We use hybrid monitoring, a technique which combines advantages of both software monitoring and hardware monitoring. The paper contains a description of a hardware monitor and a software package (ZM4/SIMPLE) which make our concepts available to programmers, assisting them in debugging and tuning of their code. A short survey of related monitor systems highlights the distinguishing features of our implementation. As an application of our monitoring and evaluation system, the analysis of a parallel ray tracing program running on the SUPRENUM multiprocessor is described. It is shown that monitoring and modeling both rely on a common abstraction of a system's dynamic behavior and therefore can be integrated to one comprehensive methodology. This methodology is supported by a set of tools.>
Richard Hofmann, Rainer Klar, Bernd Mohr, Andreas Quick, Markus Siegle
IEEE Trans. Parallel Distributed Syst.3
1993 Implementing a parallel C++ runtime system for scalable parallel systems
abstract
No abstract available.
François Bodin, Pete Beckman, Dennis Gannon, Shelby X. Yang, S. Kesavan, Allen D. Malony, Bernd Mohr
SC7