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

Threads may do significant work out of the non-shared overflow buffer

XMLWordPrintable

    • gc
    • b127

        Some task queue statistics measurements on BigRamTester (attached) indicate that particularly during mixed gcs a significant part of the gc threads operate out of the local overflow buffer, and in many cases also do so while the shared task queue is not completely full or even completely empty, disallowing other threads to steal and distribute work.

        BigRamTester run options -Xlog:gc*=debug,gc+phases+task=trace,gc+task+stats=trace,gc+refine=info:x.log -Xms20G -Xmx20G BigRamTester on a 2x10x2 machine.

        Look at the attached log file for the task queue stats, particularly the new columns snotfull (indicating that we popped from the overflow queue while the shared queue has not been full) and sempty (indicating that we popped from the overflow queue while shared queue has been empty).

        Relevant patches attached.

          1. 8152438-fix-push-overflow-into-shared-first
            2 kB
          2. BigRamTester.java
            7 kB
          3. enable-taskqueue-stats
            0.5 kB
          4. improved-taskqueue-stats
            2 kB
          5. x.log
            584 kB

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

                Created:
                Updated:
                Resolved: