<br><br><div class="gmail_quote">On Tue, Jul 31, 2012 at 12:10 PM, Chris Muller <span dir="ltr">&lt;<a href="mailto:asqueaker@gmail.com" target="_blank">asqueaker@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
With standard GC settings the test survived for 30 seconds before VM<br>
crash.  When I upped vmParameter 5 to 100,000,000 the test survived<br>
for 228 seconds.<br>
<br>
Is there a way to know when a GC occurs (either kind)?  I&#39;ve<br>
instrumented several methods to log to a global log file -- I&#39;d like<br>
to try to confirm the crash coincides with a GC..<br></blockquote><div><br></div><div>The API isn&#39;t stable but you can turn on tracing of process switches and GCs via</div><div><br></div><div>thevm -sendtrace 16 my.image</div>
<div><br></div><div>Run this under gdb then use dumpTraceLog() to print the events.  The problem is that if the crash is in the GC then the problem is probably heap corruption long before the GC (e.g. through an FFI call trampling over the end of an object).  There is enormous timing variation in Squeak right now because of Time initialization when the image waits for up to on second to see when the clock ticks, to sync the second and millisecond clocks.  I have removed this in our Newspeak images at Cadence, replacing it with use of the 64-bit microsecond clock, which does not have a synchronisation problem since both milliseconds and seconds can be derived from the one clock.  But we can&#39;t move to this until the standard VM provides 64-bit local microsecond clocks (local and utc) with primitive numbers/names that match cog.</div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="HOEnZb"><div class="h5"><br>
<br>
<br>
On Tue, Jul 31, 2012 at 1:01 PM, Bert Freudenberg &lt;<a href="mailto:bert@freudenbergs.de">bert@freudenbergs.de</a>&gt; wrote:<br>
&gt;<br>
&gt; On 31.07.2012, at 09:17, Chris Muller wrote:<br>
&gt;<br>
&gt;&gt; I&#39;m trying to investigate a reproducible Cog crash and beginning to<br>
&gt;&gt; wonder whether Cog may have some sort of timing issue with the garbage<br>
&gt;&gt; collector.<br>
&gt;&gt;<br>
&gt;&gt; Is there an easy way to turn off the garbage collector in the image?<br>
&gt;<br>
&gt; I don&#39;t think so, but you could raise the limits so GC occurs less often.<br>
&gt;<br>
&gt; - Bert -<br>
&gt;<br>
&gt;<br>
&gt;<br>
<br>
</div></div></blockquote></div><br><br clear="all"><div><br></div>-- <br>best,<div>Eliot</div><br>