dartvm --enable_type_checks hangs on optimized function #123

Closed
DartBot opened this Issue Oct 14, 2011 · 3 comments

Comments

Projects
None yet
3 participants
Member

DartBot commented Oct 14, 2011

This issue was originally filed by duane.1.sa...@gmail.com


In my .dart version of the fannkuch shootout benchmark, dartvm hangs with infinite loop when --enable_type_checks is on, after entering the optimized recompiled copy of the fannkuch function. This happens whether or not the dart source has explicit type notations. The unoptimized first compilation of the function executes well.

This version of fannkuch was derived from the non-Int32Array Javascript version at shootout.alioth.debian.org. I first made minimal changes to put it in Dart form. In that version, Dartvm never recompiled the hot function into optimized form, because it was called only once and directly contained all the nested loops. I changed the main to invoke the fannkuch() function twice per run, and found that a first call with n=6 would trigger optimizations before the second call, whereas a first call with n=5 would not.

I used --trace_compiler to verify whether optimizations were triggered, and to verify that the hang occurs after entering the regenerated function, not during the recompilation itself.


Attachment:
fannkuch.1.dart (1.90 KB)

Member

DartBot commented Oct 14, 2011

This comment was originally written by drfibonacci@google.com


Added Area-VM, Triaged labels.

Contributor

iposva-google commented Oct 17, 2011

Set owner to @sgmitrovic.
Added Accepted label.

Contributor

sgmitrovic commented Oct 18, 2011

This is not a hang but an extreme slow down when using --enable_type_checks with array store). We are aware of this performance issue and are working on fixing it. If you instrument the innermost do-loop with a print, you will notice that it is making slow progress (I was able to run the code to completion).


Added Invalid label.

sgmitrovic was assigned by DartBot Oct 18, 2011

@nex3 nex3 pushed a commit that referenced this issue Aug 31, 2016

@vsmenon vsmenon Merge pull request #123 from kaendfinger/patch-1
Fix Typo in Pubspec
2c4779a

This issue was closed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment