1 / 27

Performance Analysis with Vampir DKRZ Tutorial 2013 5 – 7 August, Hamburg

Performance Analysis with Vampir DKRZ Tutorial 2013 5 – 7 August, Hamburg. Matthias Weber, Frank Winkler, Andreas Knüpfer ZIH , Technische Universität Dresden. Outline. Part I: Welcome to the Vampir Tool Suite Mission Event Trace Visualization Vampir & VampirServer

carlo
Télécharger la présentation

Performance Analysis with Vampir DKRZ Tutorial 2013 5 – 7 August, Hamburg

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Performance Analysis with VampirDKRZ Tutorial 20135 – 7 August, Hamburg Matthias Weber, Frank Winkler, Andreas Knüpfer ZIH, TechnischeUniversitätDresden

  2. Outline Part I: Welcome to the Vampir Tool Suite • Mission • Event Trace Visualization • Vampir & VampirServer • Vampir Performance Charts Part II: Vampir Hands-on • Visualizing and analyzing NPB-MZ-MPI / BT Part III: Summary and Conclusion

  3. Mission • Visualization of dynamicsof complex parallel processes • Requires two components • Monitor/Collector (Score-P) • Charts/Browser (Vampir) Typicalquestionsthat Vampir helpstoanswer: • 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 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

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

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

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

  8. Main Displays of Vampir • Timeline Charts: • Master Timeline • Process Timeline • Counter Data Timeline • Performance Radar • Summary Charts: • Function Summary • Message Summary • Process Summary • Communication Matrix View

  9. Vampir Hands-on Visualizing and Analyzing NPB-MZ-MPI / BT

  10. Vampir: Visualizationofthe NPB-MZ-MPI / BT trace % vampirscorep_bt-mz_B_4x4_trace/traces.otf2 Navigation Toolbar Function Summary Function Legend Master Timeline

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

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

  13. Vampir: Visualizationofthe NPB-MZ-MPI / BT trace TypicalProgramPhases Initialisation Phase Computation Phase

  14. Vampir: Visualizationofthe NPB-MZ-MPI / BT trace Counter Data Timeline Detailed counter information over time for an individual process.

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

  16. Vampir: Visualizationofthe NPB-MZ-MPI / BT trace Zoom in: Inititialization Phase Context View:Detailed information about function “initialize_”.

  17. Vampir: Visualizationofthe NPB-MZ-MPI / BT trace Feature: Find Function Execution of function “initialize_” results in higher page fault rates.

  18. Vampir: NPB-MZ-MPI / BT sourcesnippet #include "scorep/SCOREP_User.h" c-------------------------------------------------------------------- c initializedata c-------------------------------------------------------------------- calltimer_start(1) ... c-------------------------------------------------------------------- c start the benchmark time step loop c-------------------------------------------------------------------- do step = 1, niter SCOREP_USER_REGION_BEGIN( my_region_handle, "iteration", SCOREP_USER_REGION_TYPE_COMMON ) ... callexch_qbc(...) do iz = 1, proc_num_zones calladi(...) end do SCOREP_USER_REGION_END( my_region_handle) end do calltimer_stop(1) c-------------------------------------------------------------------- c perform verification and print results c-------------------------------------------------------------------- ...

  19. Vampir: Visualizationofthe NPB-MZ-MPI / BT trace Computation Phase Computation phase results in higher floating point operations.

  20. Vampir: Visualizationofthe NPB-MZ-MPI / BT trace Zoom in: Computation Phase MPI communication results in lower floating point operations.

  21. Vampir: Visualizationofthe NPB-MZ-MPI / BT trace Zoom in: FinalizationPhase “Early reduce” bottleneck.

  22. Vampir: Visualizationofthe NPB-MZ-MPI / BT trace Process Summary • Function Summary: Overview of the accumulated information across all functions and for a collection of processes. • Process Summary:Overview of theaccumulated information across all functions and for every process independently.

  23. Vampir: Visualizationofthe NPB-MZ-MPI / BT trace Process Summary Find groups of similar processes and threads by using summarized function information.

  24. Summary and Conclusion

  25. Summary • Vampir & VampirServer • Interactive trace visualization and analysis • Intuitive browsing and zooming • Scalable to large trace data sizes (20 TByte) • Scalable to high parallelism (200000 processes) • Vampirfor Linux, Windows and Mac OS X • Note: Vampirdoes neither solve your problems automatically nor point you directly at them. Yet, itdoes give you FULL insight into the execution ofyour application.

  26. Conclusion • Performance analysis very important in HPC • Use performance analysis tools for profiling and tracing • Do not spend effort in DIY solutions, e.g. like printf-debugging • Use tracing tools with some precautions • overhead • data volume • Let us know about problems and about feature wishes: vampirsupport@zih.tu-dresden.de

  27. Vampir is available at http://www.vampir.eu Get support via vampirsupport@zih.tu-dresden.de

More Related