Skip to main content

A Multi-level Monitoring Framework for Stream-Based Coordination Programs

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 7439))

Abstract

Stream-based Coordination is a promising approach to execute programs on parallel hardware such as multi-core systems. It allows to reuse sequential code at component level and to extend such code with concurrency-handling at the coordination level. In this paper we identify the monitoring information required to enable the calculation of performance metrics, automatic load balancing, and bottleneck detection. The monitoring information is obtained by implicitly instrumenting multiple levels: the runtime system and the operating system.

We evaluate the monitoring overhead caused by different use cases on S-Net as it is a challenging monitoring benchmark with a flexible and fully asynchronous execution model, including dynamic mapping and scheduling policies. The evaluation shows that in most cases the monitoring causes a negligible overhead of less than five percent.

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   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.99
Price excludes VAT (USA)
  • Compact, lightweight 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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

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. Concurrency and Computation: Practice and Experience 22(6), 685–701 (2010)

    Google Scholar 

  2. Black, F., Scholes, M.: The Pricing of Options and Corporate Liabilities. The Journal of Political Economy 81(3), 637–654 (1973)

    Article  Google Scholar 

  3. DES. Data Encryption Standard. In: FIPS PUB 46-3. Federal Information Processing Standards Publication (1977)

    Google Scholar 

  4. Dorigo, M., Stützle, T.: Ant Colony Optimization. Bradford Book (2004)

    Google Scholar 

  5. Eager, D.L., Lazowska, E.D., Zahorjan, J.: Adaptive load sharing in homogeneous distributed systems. IEEE Trans. Softw. Eng. 12(5), 662–675 (1986)

    Google Scholar 

  6. Gedik, B., Andrade, H., Frenkiel, A., De Pauw, W., Pfeifer, M., Allen, P., Cohen, N., Wu, K.-L.: Tools and strategies for debugging distributed stream processing applications. Softw. Pract. Exper. 39, 1347–1376 (2009)

    Article  Google Scholar 

  7. Geimer, M., Wolf, F., Wylie, B.J.N., Ábrahám, E., Becker, D., Mohr, B.: The Scalasca performance toolset architecture. Concurrency and Computation: Practice and Experience 22(6), 702–719 (2010)

    Google Scholar 

  8. Grelck, C., Scholz, S., Shafarenko, A.: Asynchronous Stream Processing with S-Net. International Journal of Parallel Programming 38(1), 38–67 (2010)

    Article  MATH  Google Scholar 

  9. Grelck, C., Scholz, S.-B., Shafarenko, A.: A Gentle Introduction to S-Net: Typed Stream Processing and Declarative Coordination of Asynchronous Components. Parallel Processing Letters 18(2), 221–237 (2008)

    Article  MathSciNet  Google Scholar 

  10. Kahn, G.: The semantics of a simple language for parallel programming. In: Rosenfeld, J.L. (ed.) Proc. IFIP Congress on Information Processing, Stockholm, Sweden (August 1974) ISBN: 0-7204-2803-3

    Google Scholar 

  11. Lai, A.-C., Shieh, C.-K., Kok, Y.-T.: Load balancing in distributed shared memory systems. In: IEEE International on Performance, Computing, and Communications Conference, IPCCC 1997, pp. 152–158 (February 1997)

    Google Scholar 

  12. Malony, A., Shende, S., Trebon, N., Ray, J., Armstrong, R., Rasmussen, C., Sottile, M.: Performance technology for parallel and distributed component software. Concurrency and Computation: Practice and Experience 17(2-4), 117–141 (2005)

    Article  Google Scholar 

  13. Miller, B., Clark, M., Hollingsworth, J., Kierstead, S., Lim, S.-S., Torzewski, T.: Ips-2: the second generation of a parallel program measurement system. IEEE Transactions on Parallel and Distributed Systems 1(2), 206–217 (1990)

    Article  Google Scholar 

  14. Miller, B.P., Callaghan, M.D., Cargille, J.M., Hollingsworth, J.K., Irvin, R.B., Karavanic, K.L., Kunchithapadam, K., Newhall, T.: The paradyn parallel performance measurement tool. Computer 28, 37–46 (1995)

    Article  Google Scholar 

  15. Mirgorodskiy, A.V., Miller, B.P.: Diagnosing Distributed Systems with Self-propelled Instrumentation. In: Issarny, V., Schantz, R. (eds.) Middleware 2008. LNCS, vol. 5346, pp. 82–103. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  16. Penczek, F., Herhut, S., Scholz, S.-B., Shafarenko, A., Yang, J., Chen, C.-Y., Bagherzadeh, N., Grelck, C.: Message Driven Programming with S-Net: Methodology and Performance. In: International Conference on Parallel Processing Workshops, pp. 405–412 (2010)

    Google Scholar 

  17. Petkov, V., Gerndt, M.: Integrating parallel application development with performance analysis in periscope. In: 2010 IEEE International Symposium on Parallel Distributed Processing, Workshops and Phd Forum (IPDPSW), pp. 1–8 (April 2010)

    Google Scholar 

  18. Prokesch, D.: A light-weight parallel execution layer for shared-memory stream processing. Master’s thesis, Technische Universität Wien, Vienna, Austria (February 2010)

    Google Scholar 

  19. Shende, S.S., Malony, A.D.: The tau parallel performance system. Int. J. High Perform. Comput. Appl. 20(2), 287–311 (2006)

    Article  Google Scholar 

  20. Shivaratri, N., Krueger, P.: Two adaptive location policies for global scheduling algorithms. In: Proceedings of 10th International Conference on Distributed Computing Systems, May-1 June, pp. 502–509 (1990)

    Google Scholar 

  21. Shivaratri, N., Krueger, P., Singhal, M.: Load distributing for locally distributed systems. Computer 25(12), 33–44 (1992)

    Article  Google Scholar 

  22. Wadge, W.W., Ashcroft, E.A.: LUCID, the dataflow programming language. Academic Press Professional, Inc., San Diego (1985)

    MATH  Google Scholar 

  23. Wenzel, I., Kirner, R., Puschner, P., Rieder, B.: Principles of timing anomalies in superscalar processors. In: Proc. 5th International Conference of Quality Software, Melbourne, Australia (September 2005)

    Google Scholar 

  24. Wilkinson, B., Allen, M.: Parallel programming - techniques and applications using networked workstations and parallel computers, 2nd edn. Pearson Education (2005)

    Google Scholar 

  25. Xu, Z., Larus, J.R., Miller, B.P.: Shared-memory performance profiling. In: Proceedings of the Sixth ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPOPP 1997, pp. 240–251. ACM, New York (1997)

    Chapter  Google Scholar 

  26. Yang, C.-Q., Miller, B.: Performance measurement for parallel and distributed programs: a structured and automatic approach. IEEE Transactions on Software Engineering 15(12), 1615–1629 (1989)

    Article  Google Scholar 

  27. Zhang, Y., Kameda, H., Shimizu, K.: Adaptive bidding load balancing algorithms in heterogeneous distributed systems. In: Proceedings of the Second International Workshop on Modeling, Analysis, and Simulation of Computer and Telecommunication Systems, MASCOTS 1994, January-2 February, pp. 250–254 (1994)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Nguyen, V.T.N., Kirner, R., Penczek, F. (2012). A Multi-level Monitoring Framework for Stream-Based Coordination Programs. In: Xiang, Y., Stojmenovic, I., Apduhan, B.O., Wang, G., Nakano, K., Zomaya, A. (eds) Algorithms and Architectures for Parallel Processing. ICA3PP 2012. Lecture Notes in Computer Science, vol 7439. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-33078-0_7

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-33078-0_7

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-33077-3

  • Online ISBN: 978-3-642-33078-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics