skip to main content
10.1145/2384616.2384641acmconferencesArticle/Chapter ViewAbstractPublication PagessplashConference Proceedingsconference-collections
research-article

A black-box approach to understanding concurrency in DaCapo

Published:19 October 2012Publication History

ABSTRACT

Increasing levels of hardware parallelism are one of the main challenges for programmers and implementers of managed runtimes. Any concurrency or scalability improvements must be evaluated experimentally. However, application benchmarks available today may not reflect the highly concurrent applications we anticipate in the future. They may also behave in ways that VM developers do not expect. We provide a set of platform independent concurrency related metrics and an in-depth observational study of current state of the art benchmarks, discovering how concurrent they really are, how they scale the work and how they synchronise and communicate via shared memory.

References

  1. ASM project. http://asm.ow2.org, 2011.Google ScholarGoogle Scholar
  2. BTrace. http://kenai.com/projects/btrace, 2011.Google ScholarGoogle Scholar
  3. B. Alpern, C.R. Attanasio et al. Implementing Jalapeno in Java. In Object-Oriented Programming, Systems, Languages and Applications (OOPSLA), 1999. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. W. Binder, J. Hulaas and P. Moret. Reengineering standard Java runtime systems through dynamic bytecode instrumentation. In Source Code Analysis and Manipulation (SCAM), 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. S.M. Blackburn and K.S. McKinley. Ulterior reference counting: Fast garbage collection without a long wait. In Object-Oriented Programming, Systems, Languages and Applications (OOPSLA), 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. S.M. Blackburn, R. Garner et al. The DaCapo benchmarks: Java benchmarking development and analysis. In Object-Oriented Programming, Systems, Languages and Applications (OOPSLA), 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. A. Burns and A.J. WellingS. Real-Time Systems and Programming Languages: ADA 95, Real-Time Java and Real-Time POSIX. Addison-Wesley, 3rd edition, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. K.-Y. Chen, J.M. Chang, and T.-W. Hou. Multithreading in Java: Performance and scalability on multicore systems. IEEE Transactions on Computers, 60 (11), 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. D. Doligez and G. Gonthier. Portable, unobtrusive garbage collection for multiprocessor systems. In Symposium on Principles of Programming Languages (POPL), 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. D. Doligez and X. Leroy. A concurrent generational garbage collector for a multi-threaded implementation of ML. In Symposium on Principles of Programming Languages (POPL), 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. T. Domani, E.K. Kolodner et al. Thread-local heaps for Java. In International Symposium on Memory Management (ISMM), 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. B. Dufour, K. Driesen et al. Dynamic metrics for Java. In Object-Oriented Programming, Systems, Languages and Applications (OOPSLA), 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. H. Esmaeilzadeh, T. Cao et al. Looking back on the language and hardware revolutions: Measured power, performance and scaling. In Architectural Support for Programming Languages and Operating Systems (ASPLOS), 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. L. Gidra, G. Thomas et al. Assessing the scalability of garbage collectors on many cores. In Programming Languages and Operating Systems (PLOS), 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. R.E. Jones and A.C. King. A fast analysis for thread-local garbage collection with dynamic class loading. In Source Code Analysis and Manipulation (SCAM), 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. R.E. Jones and C. Ryder. A study of Java object demographics. In International Symposium on Memory Management (ISMM), 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. R.E. Jones, A.L. Hosking, and J.E.B. Moss. The Garbage Collection Handbook: The Art of Automatic Memory Management. Chapman & Hall, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. T. Liu and E.D. Berger. Sheriff: precise detection and automatic mitigation of false sharing. In Object Oriented Programming Systems, Languages and Applications (OOPSLA), 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. S. Marlow and S.L. Peyton Jones. Multicore garbage collection with local heaps. In International Symposium on Memory Management (ISMM), 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. K. Shiv, K. Chow et al. SPEC jvm2008 performance characterization. In SPEC Benchmark Workshop on Computer Performance Evaluation and Benchmarking, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. B. Steensgaard. Thread-specific heaps for multi-threaded programs. In International Symposium on Memory Management (ISMM), 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. L. Valiant. A bridging model for parallel computation. CACM, 33 (8): 103--111, 1990. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. P.H. Welch and J.B. Pedersen. Santa Claus: Formal analysis of a process-oriented solution. ACM Trans. Comput. Syst., 32 (4), 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. X. Yang, S.M. Blackburn et al. Why nothing matters: the impact of zeroing. In Object Oriented Programming Systems Languages and applications (OOPSLA), 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. X. Yang, S.M. Blackburn et al. Barriers reconsidered, friendlier still! In International Symposium on Memory Management (ISMM), 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Y. Zhao, J. Shi et al. Allocation wall: A limiting factor of Java applications on emerging multi-core platforms. In Object-Oriented Programming, Systems, Languages and Applications (OOPSLA), 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. A black-box approach to understanding concurrency in DaCapo

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      OOPSLA '12: Proceedings of the ACM international conference on Object oriented programming systems languages and applications
      October 2012
      1052 pages
      ISBN:9781450315616
      DOI:10.1145/2384616
      • cover image ACM SIGPLAN Notices
        ACM SIGPLAN Notices  Volume 47, Issue 10
        OOPSLA '12
        October 2012
        1011 pages
        ISSN:0362-1340
        EISSN:1558-1160
        DOI:10.1145/2398857
        Issue’s Table of Contents

      Copyright © 2012 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 19 October 2012

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article

      Acceptance Rates

      Overall Acceptance Rate268of1,244submissions,22%

      Upcoming Conference

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader