thawkins / strongtalk

Automatically exported from code.google.com/p/strongtalk
0 stars 0 forks source link

Invocation counter decay #18

Open GoogleCodeExporter opened 9 years ago

GoogleCodeExporter commented 9 years ago
Currently, invocation counters for methods and loops increase
monotonically, so that if a program runs long enough, any repetitively
executed code will eventually trip the counter and be compiled.

To solve this, time must be included as a factor, by having a background
process occasionally scale invocation counters down, so that they have to
increase at a certain rate to cause compilation.

This is not generally a problem, and can probably be ignored for a very
long time.  If code-cache flushing is implemented to just discard all
compiled code and begin optimizing again when the code cache overflows,
then this can probably be ignored indefinitely.

Original issue reported on code.google.com by David.Gr...@gmail.com on 22 Sep 2006 at 10:41