Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8237143

Eliminate DirtyCardQ_cbl_mon

XMLWordPrintable

    • gc
    • b10

      The DirtyCardQ_cbl_mon is used to

      (1) provide exclusive access to the G1DirtyCardQueueSet completed buffer queue, and

      (2) provide notification by mutators to the primary ConcurrentRefineThread that there are enqueued buffers that should be processed by refinement threads.

      This can lead to performance issues from lock contention, as all running mutator and concurrent refinement threads are occasionally taking that lock.

      A lock-free buffer queue would fix the buffer queue contention problem.

      There is still a residual source of contention from using a HotSpot Monitor for notification. A different notification mechanism might address that, or perhaps polling by the primiary concurrent refinement thread.

            kbarrett Kim Barrett
            kbarrett Kim Barrett
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: