The updated patch simply iterates of the tree to count the nodes at the
beginning of each loop. In my tests, the cost of that walk is 5ms on a
small program, whereas the cost of the biggest optimizer is >100ms, so I
feel comfortable leaving it in there. Here is the new trace output:
Pass 1:
http://gwt-code-reviews.appspot.com/841801/show
--
http://groups.google.com/group/Google-Web-Toolkit-Contributors
I'll make the change to remove all of the numVisit++ references. then
I'll add a test for the OptimizerStats class and fix up to pass
checkstyle before requesting a code review.
http://gwt-code-reviews.appspot.com/841801/diff/1/4
File dev/core/src/com/google/gwt/dev/jjs/impl/DeadCodeElimination
I went back and removed my style nit comments to focus on the
substantive stuff. Manually tracking the number of visits in every
visitor, and how that data is used, are my primary concerns.
http://gwt-code-reviews.appspot.com/841801/diff/1/4
File dev/core/src/com/google/gwt/dev/jjs/impl/DeadCod
Eric, I think that you are on the right track by trying to measure the
effectiveness of each optimization -- even if we need to more data to
increase the accuracy.
On Fri, Sep 3, 2010 at 6:02 AM, Eric Ayers wrote:
> I was thinking about how keeping track of the AST size on the fly could be
> exp
I was thinking about how keeping track of the AST size on the fly could be
expensive and complicated. The simplest thing to do would be to have to add
in a separate walk that just counted nodes, maybe once at the head of
optimizeLoop. I wrote this dummy code earlier to measure the cost of just a
I'm looking for feedback on this proposed change, mainly, is the statistical
information worth the added complexity? Currently, this only dumps out a
diagnostic when you specify
-Dgwt.jjs.traceMethods=com.google.gwt.dev.jjs.JavaToJavaScriptCompiler.optimize
on the Compiler command line. Here
On 2010/09/03 03:38:46, zundel wrote:
Just a general comment, if you want to get even more granularity, look
at this old path of mine, which instrumented MethodInliner to give
really good information on exactly how many times something was inlined
vs not, and a count of the failure types, which