Skip to main content

Extending the Functionality of Score-P Through Plugins: Interfaces and Use Cases

  • Conference paper
  • First Online:

Abstract

Performance measurement and runtime tuning tools are both vital in the HPC software ecosystem and use similar techniques: the analyzed application is interrupted at specific events and information on the current system state is gathered to be either recorded or used for tuning. One of the established performance measurement tools is Score-P. It supports numerous HPC platforms and parallel programming paradigms. To extend Score-P with support for different back-ends, create a common framework for measurement and tuning of HPC applications, and to enable the re-use of common software components such as implemented instrumentation techniques, this paper makes the following contributions: (1) We describe the Score-P metric plugin interface, which enables programmers to augment the event stream with metric data from supplementary data sources that are otherwise not accessible for Score-P. (2) We introduce the flexible Score-P substrate plugin interface that can be used for custom processing of the event stream according to the specific requirements of either measurement, analysis, or runtime tuning tasks. (3) We provide examples for both interfaces that extend Score-P’s functionality for monitoring and tuning purposes.

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   84.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD   109.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Notes

  1. 1.

    In the Score-P syntax locations define scopes that are monitored. Typically a single location is a thread that is executed on a CPU (CPU location) or an external device. Multiple locations can be grouped to location groups, e.g., all OpenMP threads within a process or all processes within a compute node.

  2. 2.

    https://github.com/score-p/scorep_plugin_cxx_wrapper.

  3. 3.

    \(Relative\ stall\ cycles = \frac{CY CLE\mathrm{\_}ACTIV ITY:CY CLES\mathrm{\_}NO\mathrm{\_}EXECUTE} {PAPI\mathrm{\_}TOT\mathrm{\_}CY C}\).

References

  1. Adhianto, L., Banerjee, S., Fagan, M., Krentel, M., Marin, G., Mellor-Crummey, J., Tallent, N.R.: HPCTOOLKIT: Tools for performance analysis of optimized parallel programs. Concurr. Comput. Pract. Exper. (2010). doi:10.1002/cpe.1553

    Google Scholar 

  2. Aguilar, X., Fürlinger, K., Laure, E.: MPI trace compression using event flow graphs. In: Proceedings of the International European Conference on Parallel and Distributed Computing (Euro-Par) (2014). doi:10.1007/978-3-319-09873-9_1

    Google Scholar 

  3. Barcelona Supercomputing Center: Extra user guide manual for version 3.1.0. https://www.bsc.es/sites/default/files/public/computer_science/performance_tools/extrae-3.1.0-user-guide.pdf. Online at bsc.es; Accessed 20 Dec 2016

  4. Bhalachandra, S., Porterfield, A., Prins, J.F.: Using dynamic duty cycle modulation to improve energy efficiency in high performance computing. In: IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW) (2015). doi:10.1109/IPDPSW.2015.144

    Google Scholar 

  5. Eichenberger, A.E., Mellor-Crummey, J., Schulz, M., Wong, M., Copty, N., Dietrich, R., Liu, X., Loh, E., Lorenz, D.: Ompt: an openmp tools application programming interface for performance analysis. Lect. Notes Comput. Sci (2013). doi:10.1007/978-3-642-40698-0_13

    Google Scholar 

  6. Forum, M.: MPI: a message-passing interface standard. version 3.1 (2015). http://mpi-forum.org/docs/mpi-3.1/mpi31-report.pdf. Online at mpi-forum.org; Accessed 20 Dec 2016

  7. Geimer, M., Wolf, F., Wylie, B.J.N., Ábrahám, E., Becker, D., Mohr, B.: The Scalasca performance toolset architecture. Concurr. Comput. Pract. Exper. (2010). doi:10.1002/cpe.1556

    Google Scholar 

  8. Gerndt, M., César, E., Benkner, S. (eds.): Automatic Tuning of HPC Applications - The Periscope Tuning Framework (PTF). Shaker Verlag, Herzogenrath (2015)

    Google Scholar 

  9. Hackenberg, D., Ilsche, T., Schuchart, J., Schöne, R., Nagel, W.E., Simon, M., Georgiou, Y.: Hdeem: high definition energy efficiency monitoring. In: Energy Efficient Supercomputing Workshop (E2SC) (2014). doi:10.1109/E2SC.2014.13

  10. Ilsche, T., Schuchart, J., Schöne, R., Hackenberg, D.: Combining instrumentation and sampling for trace-based application performance analysis. In: Tools for High Performance Computing (2015). doi:http://dx.doi.org/10.1007/978-3-319-16012-2_6

  11. Intel: Intel xeon processor E5 and E7 v3 family uncore performance monitoring reference manual (2015). Reference number: 331051-002

    Google Scholar 

  12. Knüpfer, A., Rössel, C., an Mey, D., Biersdorff, S., Diethelm, K., Eschweiler, D., Geimer, M., Gerndt, M., Lorenz, D., Malony, A., et al.: Score-p: a joint performance measurement run-time infrastructure for periscope, Scalasca, Tau, and Vampir. In: Tools for High Performance Computing (2012). doi:10.1007/978-3-642-31476-6_7

    Google Scholar 

  13. Mohr, B., Malony, A.D., Shende, S., Wolf, F.: Design and prototype of a performance tool interface for OpenMP. J. Supercomput. (2002). doi:10.1023/A:1015741304337

    MATH  Google Scholar 

  14. Müller, M.S., Knüpfer, A., Jurenz, M., Lieber, M., Brunst, H., Mix, H., Nagel, W.E.: Developing scalable applications with Vampir, Vampirserver and Vampirtrace. In: Parallel Computing Conference (PARCO) (2007)

    Google Scholar 

  15. NVIDIA: CUPTI user’s guide (2016). http://docs.nvidia.com/cuda/pdf/CUPTI_Library.pdf. Online at docs.nvidia.com; Accessed Dec 2016 20

  16. Pallipadi, V., Starikovskiy, A.: The ondemand governor past, present, and future. In: Proceedings of the Ottawa Linux Symposium (OLS) (2006). https://www.kernel.org/doc/ols/2006/ols2006v2-pages-223-238.pdf. Online at kernel.org

  17. Pallipadi, V., Li, S., Belay, A.: cpuidle: do nothing, efficiently. In: Proceedings of the Ottawa Linux Symposium (OLS) (2007). https://www.kernel.org/doc/ols/2007/ols2007v2-pages-119-126.pdf. Online at kernel.org

  18. Rountree, B., Lownenthal, D.K., de Supinski, B.R., Schulz, M., Freeh, V.W., Bletsch, T.: Adagio: Making dvs practical for complex hpc applications. In: Proceedings of the 23rd International Conference on Supercomputing (ISC) (2009). doi:10.1145/1542275.1542340

  19. Schöne, R., Molka, D.: Integrating performance analysis and energy efficiency optimizations in a unified environment. Comput. Sci. Res. Dev. (2013). doi:10.1007/s00450-013-0243-7

    Google Scholar 

  20. Schöne, R., Tschüter, R., Hackenberg, D., Ilsche, T.: The vampirtrace plugin counter interface: introduction and examples. In: Proceedings of the International European Conference on Parallel and Distributed Computing (Euro-Par) Workshops (2011). doi:10.1007/978-3-642-21878-1_62

    Google Scholar 

  21. Schöne, R., Treibig, J., Dolz, M.F., Guillen, C., Navarrete, C., Knobloch, M., Rountree, B.: Tools and methods for measuring and tuning the energy efficiency of HPC systems. Sci. Program. (2014). doi:10.3233/SPR-140393

    Google Scholar 

  22. Schulz, M., Galarowicz, J., Maghrak, D., Hachfeld, W., Montoya, D., Cranford, S.: Open—speedshop: an open source infrastructure for parallel performance analysis. Sci. Programm. (2008). doi:10.1155/2008/713705

    Google Scholar 

  23. Shende, S.S., Malony, A.D.: The TAU parallel performance system. Int. J. High Perform. Comput. Appl. (2006). doi:10.1177/1094342006064482

    MATH  Google Scholar 

  24. Spiliopoulos, V., Kaxiras, S., Keramidas, G.: Green governors: a framework for continuously adaptive DVFS. In: International Green Computing Conference and Workshops (IGCC) (2011). doi:10.1109/IGCC.2011.6008552

    Google Scholar 

  25. Terpstra, D., Jagode, H., You, H., Dongarra, J.: Tools for High Performance Computing. In: Collecting Performance Data with PAPI-C (2010). doi:10.1007/978-3-642-11261-4_11

    Google Scholar 

  26. Treibig, J., Hager, G., Wellein, G.: Likwid: a lightweight performance-oriented tool suite for x86 multicore environments. In: Proceedings of the International Conference on Parallel Processing Workshops (ICPPW) (2010). doi:10.1109/ICPPW.2010.38

    Google Scholar 

  27. Wang, B., Schmidl, D., Müller, M.S.: Evaluating the energy consumption of openmp applications on Haswell processors. Lect. Notes Comput. Sci. (2015). doi:10.1007/978-3-319-24595-9_17

    Google Scholar 

  28. Weaver, V.M.: Linux perf_event features and overhead. In: The 2nd International Workshop on Performance Analysis of Workload Optimized Systems, FastPath (2013)

    Google Scholar 

Download references

Acknowledgements

This work has been funded by the Bundesministerium für Bildung und Forschung via the research project Score-E (BMBF 01IH13001), the German Research Foundation (DFG) in the Collaborative Research Center “Highly Adaptive Energy-Efficient Computing” (HAEC, SFB 912), and by the European Union’s Horizon 2020 Programme in the READEX project under grant agreement number 671657.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Robert Schöne .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2017 Springer International Publishing AG

About this paper

Cite this paper

Schöne, R., Tschüter, R., Ilsche, T., Schuchart, J., Hackenberg, D., Nagel, W.E. (2017). Extending the Functionality of Score-P Through Plugins: Interfaces and Use Cases. In: Niethammer, C., Gracia, J., Hilbrich, T., Knüpfer, A., Resch, M., Nagel, W. (eds) Tools for High Performance Computing 2016. Springer, Cham. https://doi.org/10.1007/978-3-319-56702-0_4

Download citation

Publish with us

Policies and ethics