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

Use NonJavaThread PtrQueues

    XMLWordPrintable

Details

    • gc
    • 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

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

              Dates

                Created:
                Updated:
                Resolved: