[racket] Using the profiler effectively?
Just now, Matthias Felleisen wrote:
>
> On Sep 4, 2011, at 8:28 PM, Eli Barzilay wrote:
>
> > Just now, Danny Yoo wrote:
> >>
> >> But I don't know how to interpret the results I'm getting back from
> >> the profiler yet. I guess I'm trying to say: I'm illiterate: I
> >> don't know how to read the textual output of the profiler, and need
> >> some help.
> >
> > The output is a conventional one. (It's not completely compatible
> > with gprof (I've based it on the output from Allegro Lisp), but it's
> > close enough that it woudn't be hard to adapt it.)
>
> Eli, your sentence and parenthetical remark are not an answer to
> Danny's question.
Right -- that part was not an answer, but an indication that looking
around for explanations on how to read any profiler's output would
help. Later on I tried to explain some of his output, and of course,
having someone else improve the documentation will be helpful.
> I will say I was equally stumped when I used the profiler, and i
> thank Robby for explaining bits and pieces to me.
>
> In general, the entire answer suggests that there is serious room
> for improvement. Sadly the whole problem sounds like a problem of
> presenting information in a useful and easily consumable manner --
> which isn't PLT's strong point.
In that case my answer was successful... Presenting the information
in a useful way *is* the main problem here. Doing that via a plain
text file is making it particularly challenging.
> When I see such things, I sure wish we had an "HCI department" :-)
That would help, obviously, since I don't have good ideas on how to
improve the textual output. That's why I said that a good direction
is to produce some output that existing profiler visualization tools
can use -- my guess is that there are projects that did considerable
work on that already. A quick search got me here:
http://stackoverflow.com/questions/54971/profiling-visualization-tools
which has a number of pointers that look useful. It also looks like
graphviz is the most popular recommendation, so perhaps that's the
best way to go -- slapping a GUI or an HTML rendering around it.
(And in case it wasn't too clear -- if anyone is interested in taking
this, I'll be very happy to help from the profiler's side.)
--
((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay:
http://barzilay.org/ Maze is Life!