Skip to main content

μProfiler: Profiling User-Level Threads in a Shared-Memory Programming Environment

  • Conference paper
  • First Online:
Computing in Object-Oriented Parallel Environments (ISCOPE 1998)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1505))

  • 344 Accesses

Abstract

A profiler is an important tool for understanding the dynamic behaviour of concurrent programs to locate problems and optimize performance. The best way to improve profiling capabilities and reduce the time to analyze a concurrent program is to use a target-specific profiler that understands the underlying concurrent runtime environment. A profiler for understanding execution of user and kernel level threads is presented, which is target-specific for the μC++ concurrency system. This allows the insertion of hooks into the μC++ data structures and runtime kernel to ensure crucial operations are monitored exactly. Because the profiler is written in μC++ and has an extendible design, it is easy for users to write new metrics and incorporate them into the profiler.

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

Access this chapter

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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Peter A. Buhr and Richard A. Stroobosscher. μC++ annotated reference manual, version 4.6. Technical report, Univ. of Waterloo, July 1996. Available via ftp from http://plg.uwaterloo.ca in pub/uSystem/uC++.ps.gz.

  2. Peter A. Buhr, Martin Karsten, and Jun Shih. A multi-threaded debugger for multi-threaded applications. In Proc. SPDT’96: SIGMETRICS Symp. on Parallel and Distributed Tools, pages 80–87. ACM Press, May 1996.

    Google Scholar 

  3. Robert R. Denda. Profiling concurrent programs. Diplomarbeit, Universität Mannheim, Mannheim, Germany, September 1997. Available via ftp from http://plg.uwaterloo.ca in pub/MVD/DendaThesis.ps.gz.

    Google Scholar 

  4. D.A. Reed et al. Scalable performance analysis: The Pablo performance analysis environment. In Proc. Scalable Parallel Libraries Conf. IEEE Computer Society, 1993.

    Google Scholar 

  5. D.A. Reed et al. Virtual reality and parallel systems performance analysis. IEEE Computer, 28(11), November 1995.

    Google Scholar 

  6. Tara Maja Madhyastha. A portable system for data sonification. Master’s thesis, Rutgers State Univ., 1990.

    Google Scholar 

  7. B. Miller et al. The Paradyn parallel performance measurement tools. IEEE Computer, 28(11), November 1995.

    Google Scholar 

  8. T. Lehr et al. MKM: Mach kernel monitor description, examples and measurements. Technical report, Carnegie-Mellon Univ., March 1989. PA-CS-89-131.

    Google Scholar 

  9. T.E. Anderson and E.D. Lazowska. Quartz: A tool for tuning parallel program performance. In Proc. 1990 SIGMETRICS Conf. on Measurement and Modeling of Computer Systems, pages 115–125, Boston, May 1990.

    Google Scholar 

  10. A. Malony et al. Performance analysis of pC++: A portable data-parallel programming system for scalable parallel computers. In Proc. 8th Int. Parallel Processing Symp., pages 75–85, Cancun, Mexico, April 1994.

    Google Scholar 

  11. D. Brown et al. Program analysis environments for parallel language systems: The Τ environment. In Proc. 2nd Workshop on Environments and Tools For Parallel Scientific Computing, pages 162–171, Townsend, Tennessee, May 1994.

    Google Scholar 

  12. S. L. Graham, P. B. Kessler, and M. K. McKusick. GPROF: a call graph execution profiler. SIGPLAN Notices, 17(6):120–126, June 1982.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1998 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Buhr, P.A., Denda, R. (1998). μProfiler: Profiling User-Level Threads in a Shared-Memory Programming Environment. In: Caromel, D., Oldehoeft, R.R., Tholburn, M. (eds) Computing in Object-Oriented Parallel Environments. ISCOPE 1998. Lecture Notes in Computer Science, vol 1505. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-49372-7_16

Download citation

  • DOI: https://doi.org/10.1007/3-540-49372-7_16

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-65387-5

  • Online ISBN: 978-3-540-49372-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics