I can confirm the NCDFE.  This could be a duplicate of:

7055941: JSR 292 method handle invocation causes excessive deoptimization for 
types not on boot class path

The workaround is to put the runtime on the boot class path.

I also can confirm that the second run of Hanoi is slower with JDK 7.  This is 
the call site invalidation.  A recent version of HotSpot runs both Hanois at 
the same speed.

-- Christian

On Aug 26, 2011, at 2:00 AM, Mark Roos wrote:

> The error I see is that at random times when I am executing Smalltalk on jvm 
> I get occasional a ClassDefNotFound 
> during an InvokeExact.  Usually when I am doing a demo.  After lots of trying 
> I have a test which fails every time 
> for me.  When it fails the stack depth varies from 1 or 2 invokeExacts to 
> lots.  And its never in the same place or 
> aligned with anything I can see.  Not allways the same method of mine for 
> instance. 
> 
> This test seems to cause the following error on server versions of JDK 7 but 
> not windows client. And seems to happen 
> when hotspot gets aggressive on code which was running.  Once it happens it 
> continues on that call site. 
> Tried on Windows XP, 7 and recent OSX port.  Also on the 8/8 Bsd Port from 
> Stephen but it has other 
> errors. 
> 
> Its at ftp.roos.com  user=javadev pw=mlvm  RtalkTest.zip.  The .gob files are 
> the smalltalk source code 
> and the libs are optional debug agents ( not used by this test). 
> 
> when run  ( java -server -cp RtalkTest.jar ri/experiment2/RtalkTest )  it: 
>         reads and loads the smalltalk image from the .gobs 
>         does an initial Hanoi recursion 
>         does lots of string handling similar to socket rad writes 
>         lists the GWT depths 
>         invalidates the call sites 
>         runs some stuff again to re bootstrap the sites 
>         runs the same Hanoi again. 
> 
> Takes a minute or so on my mac.  Fails about half way 
> 
> Thrashes pretty well all of the facets I am using and generates some pretty 
> long GWT chains. 
> 
> Other than the trap its interesting that the second Hanoi is much slower than 
> the first. 
> 
> Let me know how I can help 
> 
> regards 
> mark 
> 
> java.lang.NoClassDefFoundError: ri/core/rtalk/RtObject 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at rtPbc.r204.block$2(RiRmtViewCode addClasses:toList:indent::62) 
>         at 
> ri.core.rtalk.RtPrimitives.primBlockInvokeWithWith(RtPrimitives.java:1178) 
>         at rtPbc.r111.invoke(RtBlock2Arg value:value:) 
>         at rtPbc.r101.invoke(SortedCollection sort:to::103) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at rtPbc.r100.invoke(SortedCollection reSort:4) 
>         at rtPbc.r103.invoke(SortedCollection addAll::13) 
>         at rtPbc.r205.invoke(Collection asSortedCollection::14) 
>         at rtPbc.r204.invoke(RiRmtViewCode addClasses:toList:indent::72) 
>         at rtPbc.r204.block$1(RiRmtViewCode addClasses:toList:indent::47) 
>         at 
> ri.core.rtalk.RtPrimitives.primBlockInvokeWith(RtPrimitives.java:1172) 
>         at rtPbc.r46.invoke(RtBlock1Arg value:) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at rtPbc.r45.invoke(OrderedCollection do::14) 
>         at rtPbc.r204.invoke(RiRmtViewCode addClasses:toList:indent::73) 
>         at rtPbc.r184.invoke(RiRmtViewCode classList:48) 
>         at rtPbc.r161.invoke(RiRmtViewCode viewerDefBrowserOn::501) 
>         at rtPbc.r147.invoke(RiRmtViewCode subscribe::53) 
>         at rtPbc.r146.invoke(RiRmtViewCode handleSystemMessage::28) 
>         at rtPbc.r85.block$3(RiSystemMessageManager handleMessage::78) 
>         at 
> ri.core.rtalk.RtPrimitives.primBlockInvokeWith(RtPrimitives.java:1172) 
>         at rtPbc.r46.invoke(RtBlock1Arg value:) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at java.lang.invoke.MethodHandle.invokeExact(MethodHandle.java) 
>         at rtPbc.r45.invoke(OrderedCollection do::14) 
>         at rtPbc.r85.invoke(RiSystemMessageManager handleMessage::85) 
>         at rtPbc.r5.invoke(RiSystemMessageManager class receiveMessage::10) 
>         at ri.core.rtalk.RtCallSite.sendSmToRtalk(RtCallSite.java:456) 
>         at ri.experiment2.RtalkTest.testSM(RtalkTest.java:205) 
>         at ri.experiment2.RtalkTest.testImageLoadFile(RtalkTest.java:138) 
>         at ri.experiment2.RtalkTest.main(RtalkTest.java:25) 
> 
> _______________________________________________
> mlvm-dev mailing list
> mlvm-dev@openjdk.java.net
> http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev

_______________________________________________
mlvm-dev mailing list
mlvm-dev@openjdk.java.net
http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev

Reply via email to