Abstract
Accurate characterization of modern systems and applications requires run-time and simultaneous assessment of several execution-related parameters. Although hardware monitoring facilities in modern multi-cores allow low-level profiling, it is not always easy to convert the acquired data into insightful information. For this, a low-overhead monitoring tool (SchedMon) is proposed herein, which relies on hardware facilities and interacts with the operating system scheduler to capture the run-time behavior of single and multi-threaded applications, even in presence of nested parallelism. By tracking the attainable performance, power and energy consumption of monitored applications, SchedMon also allows their insightful characterization with the Cache-aware Roofline model. In addition, the proposed tool provides application monitoring, either in their entirety or at the level of the function calls, without requiring any changes to the original source code. Experimental results show that SchedMon introduces negligible execution overheads, while capturing the interference of several co-scheduled SPEC2006 applications.
Chapter PDF
Similar content being viewed by others
References
Perf Wiki tutorial on perf, https://perf.wiki.kernel.org/index.php (accessed: June 25, 2013)
AMD. Architecture programmer’s manual. Volume 2: System Programming (2013)
Antão, D., Taniça, L., Ilic, A., Pratas, F., Tomás, P., Sousa, L.: Monitoring performance and power for application characterization with the cache-aware roofline model. In: Wyrzykowski, R., Dongarra, J., Karczewski, K., Waśniewski, J. (eds.) PPAM 2013, Part I. LNCS, vol. 8384, pp. 747–760. Springer, Heidelberg (2014)
Browne, S., Dongarra, J., Garner, N., Ho, G., Mucci, P.: A portable programming interface for performance evaluation on modern processors. International Journal of High Performance Computing Applications 14(3), 189–204 (2000)
Cohen, W.: Tuning programs with OProfile. Wide Open Magazine 1, 53–62 (2004)
Henning, J.L.: SPEC CPU2006 benchmark descriptions. ACM SIGARCH Computer Architecture News 34(4), 1–17 (2006)
Ilic, A., Pratas, F., Sousa, L.: Cache-aware Roofline model: Upgrading the loft. Computer Architecture Letters PP(99), 1–1 (2013)
Intel. Intel 64 and ia-32 architectures software developer’s manual. Volume 3: System Programming Guide (2013)
Jarp, S., Jurga, R., Nowak, A.: Perfmon2: A leap forward in performance monitoring. Journal of Physics: Conference Series 119, 042017 (2008)
Kuan, L., Tomas, P., Sousa, L.: A comparison of computing architectures and parallelization frameworks based on a two-dimensional FDTD. In: Proceedings of the International Conference on High Performance Computing and Simulation, HPCS 2013, pp. 339–346. IEEE (2013)
Pettersson, M.: Perfctr: Linux performance monitoring counters driver (2009)
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, pp. 207–216. IEEE (2010)
Weaver, V.M.: Linux perf_event features and overhead. In: Proceedings of the International Workshop on Performance Analysis of Workload Optimized Systems, FastPath 2013, p. 80 (2013)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer International Publishing Switzerland
About this paper
Cite this paper
Taniça, L., Ilic, A., Tomás, P., Sousa, L. (2014). SchedMon: A Performance and Energy Monitoring Tool for Modern Multi-cores. In: Lopes, L., et al. Euro-Par 2014: Parallel Processing Workshops. Euro-Par 2014. Lecture Notes in Computer Science, vol 8806. Springer, Cham. https://doi.org/10.1007/978-3-319-14313-2_20
Download citation
DOI: https://doi.org/10.1007/978-3-319-14313-2_20
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-14312-5
Online ISBN: 978-3-319-14313-2
eBook Packages: Computer ScienceComputer Science (R0)