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.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 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.
- 3.
\(Relative\ stall\ cycles = \frac{CY CLE\mathrm{\_}ACTIV ITY:CY CLES\mathrm{\_}NO\mathrm{\_}EXECUTE} {PAPI\mathrm{\_}TOT\mathrm{\_}CY C}\).
References
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
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
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
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
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
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
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
Gerndt, M., César, E., Benkner, S. (eds.): Automatic Tuning of HPC Applications - The Periscope Tuning Framework (PTF). Shaker Verlag, Herzogenrath (2015)
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
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
Intel: Intel xeon processor E5 and E7 v3 family uncore performance monitoring reference manual (2015). Reference number: 331051-002
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
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
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)
NVIDIA: CUPTI user’s guide (2016). http://docs.nvidia.com/cuda/pdf/CUPTI_Library.pdf. Online at docs.nvidia.com; Accessed Dec 2016 20
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
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
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
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
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
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
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
Shende, S.S., Malony, A.D.: The TAU parallel performance system. Int. J. High Perform. Comput. Appl. (2006). doi:10.1177/1094342006064482
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
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
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
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
Weaver, V.M.: Linux perf_event features and overhead. In: The 2nd International Workshop on Performance Analysis of Workload Optimized Systems, FastPath (2013)
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
Corresponding author
Editor information
Editors and Affiliations
Rights 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
DOI: https://doi.org/10.1007/978-3-319-56702-0_4
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-56701-3
Online ISBN: 978-3-319-56702-0
eBook Packages: Mathematics and StatisticsMathematics and Statistics (R0)