JDK-8208100 : compiler/graalunit/JttLangMathALTest.java times out intermittently on Linux-X64
  • Type: Bug
  • Component: hotspot
  • Sub-Component: compiler
  • Affected Version: 11,12
  • Priority: P4
  • Status: Resolved
  • Resolution: Cannot Reproduce
  • OS: linux
  • CPU: x86_64
  • Submitted: 2018-07-23
  • Updated: 2019-09-13
  • Resolved: 2019-01-31
The Version table provides details related to the release that this issue/RFE will be addressed.

Unresolved : Release in which this issue/RFE will be addressed.
Resolved: Release in which this issue/RFE has been resolved.
Fixed : Release in which this issue/RFE has been fixed. The release containing this fix may be available for download as an Early Access Release or a General Availability Release.

To download the current JDK release, click here.
JDK 12
12Resolved
Related Reports
Blocks :  
Description
The following Graal test times out in the JDK12 CI:

compiler/graalunit/JttLangMathALTest.java

Here are snippets from the log file:

......org.graalvm.compiler.jtt.lang.Math_log10 finished
org.graalvm.compiler.jtt.lang.Math_log started (6 of 6)
  run0: Passed 335.1 ms
  run1: Passed 369.6 ms
  run2: Passed 640.4 ms
  run3: Passed 480.3 ms
  run4: Passed 349.7 ms
  run5: Passed 228.9 ms
  run6: Passed 145.7 ms
  run7: Passed 833395.5 ms
org.graalvm.compiler.jtt.lang.Math_log finished 836029.5 ms
Time: 1,555.718

OK (20265 tests)


10 longest running test classes:
    836,029 ms    org.graalvm.compiler.jtt.lang.Math_log
    481,658 ms    org.graalvm.compiler.jtt.lang.Math_log10
    113,641 ms    org.graalvm.compiler.jtt.lang.Math_abs
     53,237 ms    org.graalvm.compiler.jtt.lang.Math_cos
     49,477 ms    org.graalvm.compiler.jtt.lang.Math_exp
      2,315 ms    org.graalvm.compiler.jtt.lang.Math_exact
10 longest running tests:
    833,395 ms    run7(org.graalvm.compiler.jtt.lang.Math_log)
     54,906 ms    run7(org.graalvm.compiler.jtt.lang.Math_abs)
     51,225 ms    run0(org.graalvm.compiler.jtt.lang.Math_abs)
     48,355 ms    run8(org.graalvm.compiler.jtt.lang.Math_exp)
     48,055 ms    run3(org.graalvm.compiler.jtt.lang.Math_cos)
      2,750 ms    testLog10[43](org.graalvm.compiler.jtt.lang.Math_log10)
      1,909 ms    run0(org.graalvm.compiler.jtt.lang.Math_cos)
      1,736 ms    run1(org.graalvm.compiler.jtt.lang.Math_cos)
      1,688 ms    run6(org.graalvm.compiler.jtt.lang.Math_abs)
      1,529 ms    run2(org.graalvm.compiler.jtt.lang.Math_cos)
Java HotSpot(TM) 64-Bit Server VM warning: increase O_BUFLEN in ostream.hpp -- output truncated

----------System.err:(1/15)----------
STATUS:Passed.
----------rerun:(33/7175)*----------
<snip>
test result: Error. Program `/scratch/opt/mach5/mesos/work_dir/jib-master/install/jdk12-jdk.100/linux-x64-debug.jdk/jdk-12/fastdebug/bin/java' timed out (timeout set to 1200000ms, elapsed time including timeout handling was 1667947ms).

So the System.err portion of the log indicates that the
test passed, but the end of the test indicates that it
timed out at 1667947ms
Comments
The test is run as part of tier3 on regular basis, no failures observed for a while.
31-01-2019

Looks like the rename from jdk.vm.ci.hotspot.HotSpotResolvedObjectType::isAnonymous to isUnsafeAnonymous breaks the compilation. jdk.vm.ci.hotspot is not exported from module-info.java. However, jdk.vm.ci.hotspot is exported to jdk.internal.vm.compiler and jdk.tools.jatoc via --add-exports at build time. So the rename from isAnonymous to isUnsafeAnonymous is incompatible change that should be coordinated with the upstream Graal project. It's our oversight. I propose to revert this specific method name to keep the API unchanged for now, i.e. HotSpotResolvedObjectType::isAnonymous, until the dynamic nestmate work determines any API change if appropriate. For dynamic nestmates, JVM CI may need to be aware of the non-findable class (TBD the terminology)
07-09-2018

Comments from Dean and Doug: >> On 29 Aug 2018, at 19:23, dean.long@oracle.com wrote: >> >> On 8/29/18 2:11 AM, Doug Simon wrote: >>> When running these tests on Graal tip against JDK 11, I get: >>> >>> mx --java-home=/Library/Java/JavaVirtualMachines/jdk-11.jdk/Contents/Home unittest org.graalvm.compiler.jtt.lang.Math >>> ... >>> 10 longest running test classes: >>> 21.115 ms org.graalvm.compiler.jtt.lang.Math_log10 >>> 11.921 ms org.graalvm.compiler.jtt.lang.Math_log >>> 10.460 ms org.graalvm.compiler.jtt.lang.Math_sqrt >>> 3.525 ms org.graalvm.compiler.jtt.lang.Math_pow >>> 1.937 ms org.graalvm.compiler.jtt.lang.Math_sin >>> 1.689 ms org.graalvm.compiler.jtt.lang.Math_tan >>> 1.550 ms org.graalvm.compiler.jtt.lang.Math_exp >>> 1.537 ms org.graalvm.compiler.jtt.lang.Math_cos >>> 1.526 ms org.graalvm.compiler.jtt.lang.Math_abs >>> 338 ms org.graalvm.compiler.jtt.lang.Math_round >>> 10 longest running tests: >>> 10.583 ms run7(org.graalvm.compiler.jtt.lang.Math_log) >>> 10.335 ms run7(org.graalvm.compiler.jtt.lang.Math_sqrt) >>> 3.468 ms run11(org.graalvm.compiler.jtt.lang.Math_pow) >>> 1.666 ms run5(org.graalvm.compiler.jtt.lang.Math_sin) >>> 1.533 ms run5(org.graalvm.compiler.jtt.lang.Math_tan) >>> 1.519 ms run8(org.graalvm.compiler.jtt.lang.Math_exp) >>> 1.456 ms run3(org.graalvm.compiler.jtt.lang.Math_cos) >>> 1.371 ms run7(org.graalvm.compiler.jtt.lang.Math_abs) >>> 1.024 ms run0(org.graalvm.compiler.jtt.lang.Math_log) >>> 84 ms run0(org.graalvm.compiler.jtt.lang.Math_sin) >>> >>> All seems as expected. >>> >>> I wanted to try it against JDK tip but https://bugs.openjdk.java.net/browse/JDK-8209301 means GitHub Graal cannot be compiled against the latest JDK: >>> >>> /Users/dsimon/graal/graal/compiler/src/jdk.tools.jaotc/src/jdk/tools/jaotc/AOTCompiledClass.java:77: error: cannot find symbol >>> this.metadataName = type.isAnonymous() ? "anon<" + classId + ">" : type.getName(); >>> ^ >>> symbol: method isAnonymous() >>> location: variable type of type HotSpotResolvedObjectType >>> 1 error >>> >>> To fix this, AOTCompiledClass.java will either have to use reflection to access HotSpotResolvedObjectType.isAnonymous[Unsafe]Anonymous or a jdk12 versioned project will have to be added. >> >> It looks like they forgot to rename getHostClass(), so we could replace uses of isAnonymous() with getHostClass() != null. I think I added isAnonymous() first and then getHostClass() was added later. > > I assume `getHostClass() != null` is more expensive than `isAnonymous()` but it probably doesn't matter here. Either way, this will have to be resolved before the next Graal sync. > > -Doug > >>> -Doug
05-09-2018

Another slowness is org.graalvm.compiler.jtt.lang.Math_sqrt
29-08-2018

[~dnsimon] Did Graal miss intrinsics for these math functions?
28-08-2018

yes, it should be automatically pushed to 12
24-07-2018

ILW = same as 8207380 = P4 Yes, this seems to be duplicate of JDK-8207380. Hi @Ekaterina Pavlova, may be 8207380 fix needs to manually pushed to jdk/jdk as well ! Or is it like need to wait for next integration of jdk/jdk11 to jdk/jdk? So afterwards this 8208100 can be closed as duplicate.
24-07-2018

Looks like https://bugs.openjdk.java.net/browse/JDK-8207380 was not integrated yet into jdk/jdk
23-07-2018