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

Octane:pdfjs leaks memory, runs slower iteration to iteration

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Fixed
    • Icon: P4 P4
    • 8
    • None
    • core-libs
    • None

      $ $ java -Xbootclasspath/p:dist/nashorn.jar -jar dist/nashorn.jar test/script/basic/run-octane.js -- test/script/external/octane/pdfjs.js --verbose --iterations 100 2>&1 | tee pdfjs.log
      command line: running pdfjs.js...
      Score: 156
      Score: 160
      Score: 153
      Score: 147
      Score: 128
      Score: 113
      Score: 120
      Score: 122
      Score: 114
      Score: 117
      Score: 106
      Score: 111
      Score: 107
      Score: 105
      Score: 94.4
      Score: 99.8
      Score: 94.3
      Score: 94.7
      Score: 92.3
      Score: 90.3
      Score: 86.5
      Score: 84.6
      Score: 83.3
      Score: 73.2

      The sampling profiling shows most of the time at the end is spent at PropertyListenerManager.removePropertyListener, which does the linear scan across all listeners.

      Heap dumps show the significant amount of memory is consumed by NativeObject$Prototype.listeners, which appears to be the same instance against which the hottest call is made. On the first iterations, there are about 1M listeners, by the end of the run, there are 15M+.

            hannesw Hannes Wallnoefer
            shade Aleksey Shipilev
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: