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

C2: Randomize IGVN worklist for stress testing

    XMLWordPrintable

Details

    • Enhancement
    • Resolution: Fixed
    • P4
    • 16
    • 16
    • hotspot
    • 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

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

              Dates

                Created:
                Updated:
                Resolved: