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

Improve task queue steal protocol

XMLWordPrintable

    • gc

      In some micro-benchmarks, more than 50% of cpu time is spent in GenericTaskQueueSet::steal_best_of_2 due to evacuation threads repeatedly trying to steal when there is very little to steal, and being too eager about it.

      Significant improvements can be shown by:
      - reducing the number of steal attempts per steal round
      - not trying to steal if the victim queue is almost empty as well (because then the next thing that happens is that the victim will try to steal immediately)
      - if unsuccessful to steal (and at least some elements are in the queues), give up the CPU immediately instead of doing long active waiting (after looking if we can terminate)

            Unassigned Unassigned
            tschatzl Thomas Schatzl
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: