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

Cost per byte ergonomics dependent on number of threads

    Details

    • Type: Bug
    • Status: Open
    • Priority: P3
    • Resolution: Unresolved
    • Affects Version/s: 14
    • Fix Version/s: 15
    • Component/s: hotspot
    • Labels:
    • Subcomponent:
      gc

      Description

      We calculate the cost per byte ergonomcis value without taking the number of active threads into account, i.e.:

      src/hotspot/share/gc/g1/g1Policy.cpp


        782 double cost_per_byte_ms = (average_time_ms(G1GCPhaseTimes::ObjCopy) + average_time_ms(G1GCPhaseTimes::OptObjCopy)) / copied_bytes;

      If active_workers changes, this is wrong. Otoh active_workers probably does not change too much, and a linear interpolation might not work as speedup achieved may not perfectly scale with the number of threads.

      There may be additional similar metrics that do not take the active workers into account properly.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              tschatzl Thomas Schatzl
            • Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated: