[Vm-dev] DTrace for Squeak?
Andreas Raab
andreas.raab at gmx.de
Tue May 19 21:52:09 UTC 2009
Adrian Lienhard wrote:
> I had a few situations where this sort of logging could have saved me
> hours (or days). One example was the problem where Squeak would suddenly
> stop responding to web requests and hog the CPU but would get back into
> normal mode as soon as you wiggle the mouse [1]. I could eventually find
> the root cause by compiling a special VM with John's message tracer that
> can be activated by sending a signal. With DTrace I could have just
> written a simple D script and trace the production system when it got
> into this mood.
What we do in our production environments is to hook up SIGUSR1 to a
handler that dumps all the call stacks in the system. This has proven to
be *the* ticket to debug everything from CPU hogging over tight GC spins
to semaphore and Delay lockups.
> DTrace probes are said to have a very low execution overhead if they are
> not active and hence could be added to the VM by default. Something else
> interesting may be that DTrace provides many predefined probes for
> system and library calls that may be useful to combine with higher-level
> Smalltalk probes.
>
> I just hacked a small prototype and this seems to work (Unix VM on OS X).
Did you run benchmarks with and without the probes to see what the
impact is?
Cheers,
- ndres
More information about the Vm-dev
mailing list