Benchmark crashes on Java 8 EA (original) (raw)
Aleksey Shipilev aleksey.shipilev at oracle.com
Wed Feb 26 11:32:27 PST 2014
- Previous message: Benchmark crashes on Java 8 EA
- Next message: Benchmark crashes on Java 8 EA
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
On 02/26/2014 10:43 PM, Aleksey Shipilev wrote:
On 02/26/2014 10:30 PM, Daniel Mitterdorfer wrote:
May I jump in? I haven't used Chris' object-pool-benchmarks project before but I've tried it now out of keen interest and can confirm the described behavior. Steps to reproduce on my machine: Got it reproduced, thanks. Let's see...
This is a genuine JVM crash (segfault). I pinpointed this to forcing the inlining of "objectpoolbenchmark/suite/ClaimRelease.claimRelease". This explains why non-forked VMs are working fine: @CompilerControl is not passed there.
I have a suspicion this is somehow related to ClaimRelease.claimRelease being the recursive method, will follow up on that with VM guys. Meanwhile, it the workaround seems to be:
diff --git a/src/main/java/objectpoolbenchmark/suite/ClaimRelease.java b/src/main/java/objectpoolbenchmark/suite/ClaimRelease.java index df9deb6..6854be8 100644 --- a/src/main/java/objectpoolbenchmark/suite/ClaimRelease.java +++ b/src/main/java/objectpoolbenchmark/suite/ClaimRelease.java @@ -59,7 +59,7 @@ public abstract class ClaimRelease claimRelease(claimsLeft); }
- @CompilerControl(CompilerControl.Mode.INLINE) +// @CompilerControl(CompilerControl.Mode.INLINE) private void claimRelease(int claimsLeft) throws Exception { if (claimsLeft == 0) { return;
Thanks, -Aleksey.
- Previous message: Benchmark crashes on Java 8 EA
- Next message: Benchmark crashes on Java 8 EA
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]