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

C2: Randomize IGVN worklist for stress testing

    XMLWordPrintable

    Details

    • Type: Enhancement
    • Status: Resolved
    • Priority: P4
    • Resolution: Fixed
    • Affects Version/s: 16
    • Fix Version/s: 16
    • Component/s: hotspot
    • Labels:
    • Subcomponent:
    • Resolved In Build:
      b18

      Description

      Bugs often depend on the order in which nodes are processed by IGVN. For example, IGVN worklist order depends on (incremental) inlining decisions that vary from compilation to compilation due to different profiling information which makes some bugs very hard to reproduce.

      Randomizing IGVN worklist access might help to trigger some bugs more often:
      - Node* n = _worklist.pop();
      + // Randomize access to worklist
      + int idx = (os::random() % _worklist.size());
      + Node* n = _worklist.remove(idx);

      I gave above code a quick try and executed tier1 - tier5: No new failures but it may still pay off to introduce this for stress testing.

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              rcastanedalo Roberto Castaneda Lozano
              Reporter:
              thartmann Tobias Hartmann
              Votes:
              0 Vote for this issue
              Watchers:
              7 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: