1 Performance Analysis with Vampir ZIH, Technische Universität Dresden.

Slides:



Advertisements
Similar presentations
Operating System.
Advertisements

Process management Information maintained by OS for process management  process context  process control block OS virtualization of CPU for each process.
Scalable Multi-Cache Simulation Using GPUs Michael Moeng Sangyeun Cho Rami Melhem University of Pittsburgh.
The Path to Multi-core Tools Paul Petersen. Multi-coreToolsThePathTo 2 Outline Motivation Where are we now What is easy to do next What is missing.
1 © NOKIA Nokia Research Center / Performance Data Collection: Hybrid Approach Edu Metz, Raimondas Lencevicius Software Performance Architecture.
Chapter 4: Threads. Overview Multithreading Models Threading Issues Pthreads Windows XP Threads.
1 Virtual Machine Resource Monitoring and Networking of Virtual Machines Ananth I. Sundararaj Department of Computer Science Northwestern University July.
Robert Bell, Allen D. Malony, Sameer Shende Department of Computer and Information Science Computational Science.
3.5 Interprocess Communication Many operating systems provide mechanisms for interprocess communication (IPC) –Processes must communicate with one another.
INTRODUCTION TO PERFORMANCE ENGINEERING Allen D. Malony Performance Research Laboratory University of Oregon SC ‘09: Productive Performance Engineering.
3.5 Interprocess Communication
Operating Systems CS208. What is Operating System? It is a program. It is the first piece of software to run after the system boots. It coordinates the.
Allen D. Malony, Sameer Shende, Robert Bell Department of Computer and Information Science Computational Science Institute, NeuroInformatics.
SE-565 Software System Requirements More UML Diagrams.
1 Business Models Modeling. 2 Why Model the Business Business modeling is a technique to help answer critical questions, such as: What do the workers.
Instrumentation and Measurement CSci 599 Class Presentation Shreyans Mehta.
An Organized View of MPI and Charm++ Traces
1 The VAMPIR and PARAVER performance analysis tools applied to a wet chemical etching parallel algorithm S. Boeriu 1 and J.C. Bruch, Jr. 2 1 Center for.
D. Becker, M. Geimer, R. Rabenseifner, and F. Wolf Laboratory for Parallel Programming | September Synchronizing the timestamps of concurrent events.
1 Score-P – A Joint Performance Measurement Run-Time Infrastructure for Periscope, Scalasca, TAU, and Vampir Markus Geimer 2), Bert Wesarg 1), Brian Wylie.
Offline Performance Monitoring for Linux Abhishek Shukla.
(C) 2009 J. M. Garrido1 Object Oriented Simulation with Java.
1 Performance Analysis with Vampir DKRZ Tutorial – 7 August, Hamburg Matthias Weber, Frank Winkler, Andreas Knüpfer ZIH, Technische Universität.
1 COMPSCI 110 Operating Systems Who - Introductions How - Policies and Administrative Details Why - Objectives and Expectations What - Our Topic: Operating.
Operating System. Architecture of Computer System Hardware Operating System (OS) Programming Language (e.g. PASCAL) Application Programs (e.g. WORD, EXCEL)
LOGO OPERATING SYSTEM Dalia AL-Dabbagh
Chapter 1. Introduction What is an Operating System? Mainframe Systems
Adventures in Mastering the Use of Performance Evaluation Tools Manuel Ríos Morales ICOM 5995 December 4, 2002.
Score-P – A Joint Performance Measurement Run-Time Infrastructure for Periscope, Scalasca, TAU, and Vampir Alexandru Calotoiu German Research School for.
Operating Systems Lecture 2 Processes and Threads Adapted from Operating Systems Lecture Notes, Copyright 1997 Martin C. Rinard. Zhiqing Liu School of.
The Vampir Performance Analysis Tool Hans–Christian Hoppe Gesellschaft für Parallele Anwendungen und Systeme mbH Pallas GmbH Hermülheimer Straße 10 D
CS 584. Performance Analysis Remember: In measuring, we change what we are measuring. 3 Basic Steps Data Collection Data Transformation Data Visualization.
Martin Schulz Center for Applied Scientific Computing Lawrence Livermore National Laboratory Lawrence Livermore National Laboratory, P. O. Box 808, Livermore,
Profiling, Tracing, Debugging and Monitoring Frameworks Sathish Vadhiyar Courtesy: Dr. Shirley Moore (University of Tennessee)
ASC Tri-Lab Code Development Tools Workshop Thursday, July 29, 2010 Lawrence Livermore National Laboratory, P. O. Box 808, Livermore, CA This work.
CS333 Intro to Operating Systems Jonathan Walpole.
Belgrade, 25 September 2014 George S. Markomanolis, Oriol Jorba, Kim Serradell Performance analysis Tools: a case study of NMMB on Marenostrum.
Processes and Process Control 1. Processes and Process Control 2. Definitions of a Process 3. Systems state vs. Process State 4. A 2 State Process Model.
Debugging parallel programs. Breakpoint debugging Probably the most widely familiar method of debugging programs is breakpoint debugging. In this method,
1 Typical performance bottlenecks and how they can be found Bert Wesarg ZIH, Technische Universität Dresden.
Allen D. Malony Department of Computer and Information Science TAU Performance Research Laboratory University of Oregon Discussion:
Tool Visualizations, Metrics, and Profiled Entities Overview [Brief Version] Adam Leko HCS Research Laboratory University of Florida.
© 2006, National Research Council Canada © 2006, IBM Corporation Solving performance issues in OTS-based systems Erik Putrycz Software Engineering Group.
SC’13: Hands-on Practical Hybrid Parallel Application Performance Engineering Introduction to Parallel Performance Engineering Markus Geimer, Brian Wylie.
Overview of AIMS Hans Sherburne UPC Group HCS Research Laboratory University of Florida Color encoding key: Blue: Information Red: Negative note Green:
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Shangkar Mayanglambam, Allen D. Malony, Matthew J. Sottile Computer and Information Science Department Performance.
3/12/2013Computer Engg, IIT(BHU)1 PARALLEL COMPUTERS- 2.
Projections - A Step by Step Tutorial By Chee Wai Lee For the 2004 Charm++ Workshop.
Presented by Jack Dongarra University of Tennessee and Oak Ridge National Laboratory KOJAK and SCALASCA.
An operating system (OS) is a collection of system programs that together control the operation of a computer system.
Introduction to HPC Debugging with Allinea DDT Nick Forrington
If you have a transaction processing system, John Meisenbacher
Embedded Real-Time Systems Processing interrupts Lecturer Department University.
Beyond Application Profiling to System Aware Analysis Elena Laskavaia, QNX Bill Graham, QNX.
Introduction to Performance Tuning Chia-heng Tu PAS Lab Summer Workshop 2009 June 30,
Navigating TAU Visual Display ParaProf and TAU Portal Mahin Mahmoodi Pittsburgh Supercomputing Center 2010.
Kai Li, Allen D. Malony, Sameer Shende, Robert Bell
Software Architecture
Chapter 3: Process Concept
Introduction to the TAU Performance System®
Operating System.
Software Architecture in Practice
Business Models Modeling.
CS399 New Beginnings Jonathan Walpole.
Introduction to Operating System (OS)
Intro. To Operating Systems
PROCESS MANAGEMENT Information maintained by OS for process management
Projections Overview Ronak Buch & Laxmikant (Sanjay) Kale
Software Architecture
Presentation transcript:

1 Performance Analysis with Vampir ZIH, Technische Universität Dresden

2 Outline Mission Event Tracing Event Trace Visualization Vampir & VampirServer The Vampir Displays

3 Mission Visualization of dynamics of complex parallel processes Requires two components –Monitor/Collector (Score-P) –Charts/Browser (Vampir) Typical questions that Vampir helps to answer: –What happens in my application execution during a given time in a given process or thread? –How do the communication patterns of my application execute on a real system? –Are there any imbalances in computation, I/O or memory usage and how do they affect the parallel execution of my application?

4 Event Tracing ■ Recording information about significant points (events) during execution of the program ■ Enter / leave of a region (function, loop, …) ■ Send / receive a message, … ■ Save information in event record ■ Timestamp, location, event type ■ Plus event-specific information (e.g., communicator, sender / receiver, …) ■ Abstract execution model on level of defined events  Event trace = Chronologically ordered sequence of event records

Event Tracing void foo() {... send(B, tag, buf);... } Process A void bar() {... recv(A, tag, buf);... } Process B MONITOR synchronize(d) void bar() { trc_enter("bar");... recv(A, tag, buf); trc_recv(A);... trc_exit("bar"); } void foo() { trc_enter("foo");... trc_send(B); send(B, tag, buf);... trc_exit("foo"); } instrument Global trace view 58AENTER1 60BENTER2 62ASENDB 64AEXIT1 68BRECVA... 69BEXIT2... merge unify 1foo 2bar... 58ENTER1 62SENDB 64EXIT1... Local trace A Local trace B foo1... bar ENTER1 68RECVA 69EXIT1...

6 Event Tracing: Pros & Cons ■ Tracing advantages ■ Event traces preserve the temporal and spatial relationships among individual events (  context) ■ Allows reconstruction of dynamic application behaviour on any required level of abstraction ■ Most general measurement technique ■ Profile data can be reconstructed from event traces ■ Disadvantages ■ Traces can very quickly become extremely large ■ Writing events to file at runtime causes perturbation ■ Writing tracing software is complicated ■ Event buffering, clock synchronization,...

7 Event Tracing: Time-line Visualization 1foo 2bar AENTER160BENTER262ASENDB64AEXIT168BRECVA... 69BEXIT2... main foo bar B A

8 Event Trace Visualization with Vampir Alternative and supplement to automatic analysis Show dynamic run-time behavior graphically at any level of detail Provide statistics and performance metrics Timeline charts –Show application activities and communication along a time axis Summary charts –Provide quantitative results for the currently selected time interval

9 Vampir – Visualization Modes (1) Directly on front end or local machine % vampir Score-P Trace File (OTF2) Vampir 8 CPU Multi-Core Program Multi-Core Program Thread parallel Small/Medium sized trace

10 Vampir – Visualization Modes (2) On local machine with remote VampirServer Score-P Vampir 8 Trace File (OTF2) VampirServer CPU Many-Core Program Many-Core Program Large Trace File (stays on remote machine) MPI parallel application LAN/WAN % vampirserver start –n 12 % vampir

11 Usage order of the Vampir Performance Analysis Toolset 1.Instrument your application with Score-P 2.Run your application with an appropriate test set 3.Analyze your trace file with Vampir –Small trace files can be analyzed on your local workstation 1.Start your local Vampir 2.Load trace file from your local disk –Large trace files should be stored on the HPC file system 1.Start VampirServer on your HPC system 2.Start your local Vampir 3.Connect local Vampir with the VampirServer on the HPC system 4.Load trace file from the HPC file system

12 The main displays of Vampir Timeline Charts: – Master Timeline – Process Timeline – Counter Data Timeline – Performance Radar

13 Vampir: Visualization of the NPB-MZ-MPI / BT trace % vampir scorep_bt-mz_B_4x4_trace Master Timeline Navigation Toolbar Function Summary Function Legend

14 Vampir: Visualization of the NPB-MZ-MPI / BT trace Master Timeline Detailed information about functions, communication and synchronization events for collection of processes.

15 Vampir: Visualization of the NPB-MZ-MPI / BT trace Detailed information about different levels of function calls in a stacked bar chart for an individual process. Process Timeline

16 Vampir: Visualization of the NPB-MZ-MPI / BT trace Detailed counter information over time for an individual process. Counter Data Timeline

17 Vampir: Visualization of the NPB-MZ-MPI / BT trace Performance Radar Detailed counter information over time for a collection of processes.

18 Vampir: Visualization of the NPB-MZ-MPI / BT trace MPI communication results in lower floating point operations. Zoom in: Computation Phase

19 Summary Vampir & VampirServer –Interactive trace visualization and analysis –Intuitive browsing and zooming –Scalable to large trace data sizes (20 TByte) –Scalable to high parallelism ( processes) Vampir for Linux, Windows and Mac OS X Note: Vampir does neither solve your problems automatically nor point you directly at them. It does, however, give you FULL insight into the execution of your application.

20 Vampir is available at get support via

21 Staff at ZIH - TU Dresden: Ronny Brendel, Holger Brunst, Jens Doleschal, Ronald Geisler, Daniel Hackenberg, Michael Heyde, Matthias Jurenz, Michael Kluge, Andreas Knüpfer, Matthias Lieber, Holger Mickler, Hartmut Mix, Matthias Weber, Bert Wesarg, Frank Winkler, Matthias Müller, Wolfgang E. Nagel Acknowledgement