[Openmcl-devel] Shark
Dan Knapp
dankna at accela.net
Sat Apr 9 19:16:32 PDT 2005
I've spent a little time messing with Shark, using a modified version
of the code
Hamilton posted in October. I've attached my version of his file, in
case it's
useful to anybody; it just makes a couple trivial changes to output all
the
symbols in a specified package, instead of only one symbol at a time.
I am seeing weird behavior when I try to actually use this code.
Shark fails to
identify most of the symbols; well, that's not necessarily a bug. But
it claims that
most of the time is spent in functions which I know weren't being
called, since
they are in a totally different program module. It also claims that
functions which
I know did run for at least several seconds weren't called at all. In
other words,
somehow the symbol addresses Shark gets are wrong. How can that be? I
thought the call to (ccl::purify) moved function definitions into a
read-only area,
where they wouldn't be moved again... Are functions being aggressively
inlined?
In an old post, Gary, you mentioned that there was a way to get
OpenMCL to
cough up what function a given address is in. That might be a bit
helpful in
diagnosing this problem. How does that work?
For now, I'm just going to do my profiling the old-fashioned way,
putting timers
around each of the functions I suspect of being problematic. So I
don't really
need to solve these Shark issues for myself, right now, but it would be
great to
have a general framework for others to use.
-- Dan Knapp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: sharktest.lisp
Type: application/octet-stream
Size: 1530 bytes
Desc: not available
URL: <https://lists.clozure.com/pipermail/openmcl-devel/attachments/20050409/403cc246/attachment.obj>
More information about the Openmcl-devel
mailing list