RFR: 8264846: Regression ~5% in J2dBench.bimg_misc on Linux after JDK-8263142

Sergey Bylokhov serb at openjdk.java.net
Thu May 13 00:47:09 UTC 2021


Performance in one of the tests in the bimg_misc group is dropped by 20%(or 5% of the group) after some unused code was removed from the libawt. I assume the size of the lib became smaller and GCC heuristics were changed to do not try to increase the size by inlining over some percent. I tested various options but most of them affect different test cases in the opposite ways.

While testing I have found that the most profitable option is to simply use the "O3" optimization level, moreover, after offline discussion, we have found that this optimization level was used before, but due to the typo, we missed this option and fallback to the "LOW" level.

Note this will change optimization level for all platforms in case of any regressions we may try to implement this change for GGC only or we may try to use just these options to solve this performance issue: " -ftree-loop-vectorize -fversion-loops-for-strides "


Summary:
  b12:
    Number of tests: 13
    Overall average: 1222067.1646119351
    Best spread: 0.07% variance
    Worst spread: 3.22% variance
    (Basis for results comparison)

  o3:
    Number of tests: 13
    Overall average: 1991716.540920269
    Best spread: 0.0% variance
    Worst spread: 2.22% variance
    Comparison to basis:
      Best result: 314.15% of basis
      Worst result: 97.23% of basis
      Number of wins: 8
      Number of ties: 4
      Number of losses: 1

  two options:
    Number of tests: 13
    Overall average: 1971528.6542701898
    Best spread: 0.0% variance
    Worst spread: 7.08% variance
    Comparison to basis:
      Best result: 312.05% of basis
      Worst result: 77.27% of basis
      Number of wins: 6
      Number of ties: 1
      Number of losses: 6

-------------

Commit messages:
 - Merge branch 'master' into JDK-8264846
 - Merge branch 'master' into JDK-8264846
 - Update Awt2dLibraries.gmk
 - Update Awt2dLibraries.gmk
 - Merge branch 'master' into JDK-8264846
 - Update Awt2dLibraries.gmk

Changes: https://git.openjdk.java.net/jdk/pull/3990/files
 Webrev: https://webrevs.openjdk.java.net/?repo=jdk&pr=3990&range=00
  Issue: https://bugs.openjdk.java.net/browse/JDK-8264846
  Stats: 1 line in 1 file changed: 0 ins; 0 del; 1 mod
  Patch: https://git.openjdk.java.net/jdk/pull/3990.diff
  Fetch: git fetch https://git.openjdk.java.net/jdk pull/3990/head:pull/3990

PR: https://git.openjdk.java.net/jdk/pull/3990



More information about the build-dev mailing list