Skip to main content
  • Log in
  • Manage Cookies
EclipseCon - Eclipse Foundation
  • Conference
    • Program Schedule
    • Program List
    • Registration
  • Features
    • Community Day
    • Hacker Day
    • Dinner Meetups
    • OSGi Summit
    • Keynotes
  • Community
    • Code of Conduct
    • Health & Safety at EclipseCon
    • Community Resources
    • 2022 Speakers
    • Information for Speakers
  • Sponsors
    • Be a Sponsor
    • Information for Exhibitors
    • Our Sponsors
    • Sponsor Testimonials
  • Venue
    • Conference Venue
    • Hotels
    • Ludwigsburg
  • About Us
    • EclipseCon 2022
    • Program Committee
    • The Eclipse Foundation
    • Past Conferences
    • Other Events
  1. Home
  2. EclipseCon
  3. EclipseCon 2022
  4. Sessions
  5. Adaptive Threading: The Goldilocks Dilemma with GC Parallelism

Adaptive Threading: The Goldilocks Dilemma with GC Parallelism

Session details
Status: 
Accepted
Speaker(s): 
Salman Rana (IBM)
Experience level: 
Intermediate
Tags: 
Garbage Collection
jvm
openj9
GC Performance
Session Track: 
Java
Session Type: 
Standard

This session is intended to take a deep dive into Eclipse OpenJ9 GC internals and performance. It first lays out the basics of GC and builds upon them to explore GC performance. The presentation will heavily focus on GC parallelism and Adaptive Threading, a new innovative GC optimization for self-tuning parallelism to minimize GC pause times. The role of parallelism in reducing GC pause times and the way in which GC tasks are parallelized to take advantage of available resources are explored. The audience will see the effects of GC parallelism on application performance and observe how parallelism can be unexpectedly detrimental to performance. This is followed by a discussion on sub-optimal parallelism vs. detrimental parallelism. The session then shifts focus onto Adaptive Threading and signifies the need to develop an optimization for self-tuning GC threading/parallelism. We explore how Adaptive Threading aims to find the “goldilocks” or equilibrium number of threads, where GC achieves peak performance through parallelism. With the use of heuristics and a threading model, an optimal thread count can be projected, and the thread count can be adjusted dynamically between GC cycles to minimize inefficient use of threads. The presentation showcases how this cannot be done trivially; accurate decisions must be made to determine when to adjust the thread count, and how much to adjust by.

This session starts with a brief overview of GC to clear up common misconceptions and demystify automatic memory management. It explores OpenJ9 GC technology to reveal how GC’s job of “reclaiming memory” can be implemented in various ways ranging in complexity and resulting in varying performance characteristics; from a single, simple, Stop-The-World collector to multiple collectors working together to form a complex pause-less generational policy. The use cases resulting in such complexity and the challenges associated with it are also presented, and implementation details, such as algorithms and mechanisms are highlighted.

This presentation is best suited for an audience that has a basic understanding of memory management, one that is somewhat familiar with GC tuning (e.g., heap sizing, aware of different JVM GC policies, exposed to common command line options, aware of performance metrics etc.). Through this session, the audience will get an under-the-hood look at OpenJ9 GC technology and its implementation, they will be exposed to innovations in the VM/GC space, and overall gain a better understanding of the implications of GC on application performance.

Objective of the presentation: 
The objective of this presentation is to showcase and unravel the inner workings of Eclipse OpenJ9 garbage collection (GC) technology, with a focus on Adaptive Threading (a new innovative optimization for self-tuning GC parallelism in the OpenJ9 VM to minimize GC pause times)
Attendee pre-requisites - If none, enter "N/A": 
N/A
Schedule info
Time: 
26 Oct 2022 - 12:30 to 26 Oct 2022 - 13:05
Room: 
Wilhelm-Krämer-Zimmer
  • Sign in to post comments.

Elite

  • Huawei
  • IBM

Premium

  • Red Hat
  • Yatta Solutions GmbH
  • Eurotech

Basic

  • Obeo
  • Mercedes-Benz Tech Innovation
  • TypeFox GmbH
  • SSI Schaefer IT Solutions GmbH
  • Bosch IO GmbH
  • SCANOSS
  • EclipseSource
  • ARCAD Software

Media

  • GermanTechJobs

Become a Sponsor

Eclipse Foundation

  • About Us
  • Contact Us
  • Sponsor
  • Members
  • Governance
  • Code of Conduct
  • Logo and Artwork
  • Board of Directors
  • Careers

Legal

  • Privacy Policy
  • Terms of Use
  • Copyright Agent
  • Eclipse Public License
  • Legal Resources

Useful Links

  • Report a Bug
  • Documentation
  • How to Contribute
  • Mailing Lists
  • Forums
  • Marketplace
EclipseCon is brought to you by The Eclipse Foundation with the support of our sponsors.
Powered by Drupal and built on COD.

Copyright © Eclipse Foundation. All Rights Reserved.

Back to the top