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

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

    XMLWordPrintable

Details

    • gc
    • b127

    Backports

      Description

        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.

        Attachments

          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

          Issue Links

            Activity

              People

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

                Dates

                  Created:
                  Updated:
                  Resolved: