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

Nashorn react.js benchmark performance regression

    XMLWordPrintable

    Details

    • Subcomponent:
    • Introduced In Version:
    • Resolved In Build:
      b80

      Backports

        Description

        https://github.com/maximenajim/java-vs-node-react-rendering-microbenchmark

        This benchmark is reported to exhibit a significant performance regression that was introduced between 8u31 and 8u40.

        Running the benchmark with -Xprof indicates a ca. 88 % profile for java.lang.invoke.MethodHandleNatives.setCallSiteTargetNormal; a JFR run (-XX:+UnlockCommercialFeatures -XX:+FlightRecorder -XX:FlightRecorderOptions=defaultrecording=true,disk=true,dumponexit=true,dumponexitpath=react.jfr,stackdepth=1024) indicates megamorphism around calls to "construct" functions from "instantiateReactComponent" functions.

        In principle, this can be due to either Nashorn or java.lang.invoke changes in between 8u31 and 8u40.

        JFR log is attached.

          Attachments

            Issue Links

              Activity

                People

                Assignee:
                attila Attila Szegedi
                Reporter:
                mhaupt Michael Haupt
                Votes:
                0 Vote for this issue
                Watchers:
                5 Start watching this issue

                  Dates

                  Created:
                  Updated:
                  Resolved: