Details

    • Subcomponent:
      gc
    • Resolved In Build:
      b11

      Description

      G1 allocates a SATBMarkQueue and a G1DirtyCardQueue in each Thread, but only uses the queues in Java threads. For non-Java threads, operations that need a queue presently use the shared queue in the associated queue set in the barrier set. This leads to contention problems in some places, since the shared queues involve locking. It would be better if the already allocated per-thread queues in the non-Java threads were also used.

      Note that this doesn't eliminate the need for the shared queues (JDK-8209974). There are places that can't be converted from using a shared queue to instead using the corresponding thread-local queue.

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                kbarrett Kim Barrett
                Reporter:
                kbarrett Kim Barrett
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: