What are we measuring? I'm keen to know how high max_app can be. I suspect we need it to be  10 in order to avoid generating bad applications when compiling the compiler. -- Magnus<br><div class="gmail_quote"><div dir="ltr">On Tue, 7 Mar 2017 at 16:28, Scott Owens <<a href="mailto:S.A.Owens@kent.ac.uk">S.A.Owens@kent.ac.uk</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hold off for now, I just thought of another easy improvement.<br class="gmail_msg">
<br class="gmail_msg">
Scott<br class="gmail_msg">
<br class="gmail_msg">
> On 2017/03/07, at 15:12, Yong Kiam <<a href="mailto:tanyongkiam@gmail.com" class="gmail_msg" target="_blank">tanyongkiam@gmail.com</a>> wrote:<br class="gmail_msg">
><br class="gmail_msg">
> I can get you a before/after test on master and clos_stub on one of the benchmarks compiled in the logic.<br class="gmail_msg">
><br class="gmail_msg">
> (will take awhile though)<br class="gmail_msg">
><br class="gmail_msg">
> On Tue, Mar 7, 2017 at 10:04 AM, Scott Owens <<a href="mailto:S.A.Owens@kent.ac.uk" class="gmail_msg" target="_blank">S.A.Owens@kent.ac.uk</a>> wrote:<br class="gmail_msg">
> I should clarify that this is on the clos_stub branch, which I haven’t merged back to master.<br class="gmail_msg">
><br class="gmail_msg">
> Scott<br class="gmail_msg">
><br class="gmail_msg">
> > On 2017/03/07, at 15:00, Scott Owens <<a href="mailto:S.A.Owens@kent.ac.uk" class="gmail_msg" target="_blank">S.A.Owens@kent.ac.uk</a>> wrote:<br class="gmail_msg">
> ><br class="gmail_msg">
> > I’ve just finished the first improvement on reducing the number of stubs. I’d like to see where we are before trying to get further improvements. Can you re-try this, or even better, tell me what you were doing to get these numbers. Can we get anything meaningful without running the bootstrap (and the attendant 2 day wait)?<br class="gmail_msg">
> ><br class="gmail_msg">
> > Scott<br class="gmail_msg">
> ><br class="gmail_msg">
> >> On 2017/03/05, at 08:21, Magnus Myreen <<a href="mailto:magnus.myreen@gmail.com" class="gmail_msg" target="_blank">magnus.myreen@gmail.com</a>> wrote:<br class="gmail_msg">
> >><br class="gmail_msg">
> >> Hi all,<br class="gmail_msg">
> >><br class="gmail_msg">
> >> We should get rid of max_app. Reasons:<br class="gmail_msg">
> >><br class="gmail_msg">
> >> 2. The current compilation strategy produces too much stub code in<br class="gmail_msg">
> >>   clos_to_bvl.  If we really must have max_app (I argue below that<br class="gmail_msg">
> >>   we don't), then it should be something like 10 or 15. With the<br class="gmail_msg">
> >>   current compilation strategy, the binary produced for max_app=9 is<br class="gmail_msg">
> >>   176 kb larger than the binary for max_app=3. I wanted to try<br class="gmail_msg">
> >>   compiling with max_app=10, but that was taking more than 5<br class="gmail_msg">
> >>   minutes. Compiling with max_app=3 takes 7 seconds for me. I<br class="gmail_msg">
> >>   believe the slow down in compilation speed with differing max_app<br class="gmail_msg">
> >>   values is caused by the rapid increase in code size (number of<br class="gmail_msg">
> >>   stubs in clos_to_bvl) as max_app gets larger. My measurements<br class="gmail_msg">
> >>   are below while compiling factorial (and the basis library):<br class="gmail_msg">
> >><br class="gmail_msg">
> >>     max_app=1:  10.810s  (* very little room for opts in basis *)<br class="gmail_msg">
> >>     max_app=2:  8.724s<br class="gmail_msg">
> >>     max_app=3:  7.872s  (* allows optimisations in basis code *)<br class="gmail_msg">
> >>     max_app=4:  8.935s<br class="gmail_msg">
> >>     max_app=5:  11.608s<br class="gmail_msg">
> >>     max_app=6:  21.771s<br class="gmail_msg">
> >>     max_app=7:  42.932s<br class="gmail_msg">
> >>     max_app=8:  1m24.872s<br class="gmail_msg">
> >>     max_app=9:  3m9.745s<br class="gmail_msg">
> ><br class="gmail_msg">
> > _______________________________________________<br class="gmail_msg">
> > Developers mailing list<br class="gmail_msg">
> > <a href="mailto:Developers@cakeml.org" class="gmail_msg" target="_blank">Developers@cakeml.org</a><br class="gmail_msg">
> > <a href="https://lists.cakeml.org/listinfo/developers" rel="noreferrer" class="gmail_msg" target="_blank">https://lists.cakeml.org/listinfo/developers</a><br class="gmail_msg">
><br class="gmail_msg">
> _______________________________________________<br class="gmail_msg">
> Developers mailing list<br class="gmail_msg">
> <a href="mailto:Developers@cakeml.org" class="gmail_msg" target="_blank">Developers@cakeml.org</a><br class="gmail_msg">
> <a href="https://lists.cakeml.org/listinfo/developers" rel="noreferrer" class="gmail_msg" target="_blank">https://lists.cakeml.org/listinfo/developers</a><br class="gmail_msg">
><br class="gmail_msg">
<br class="gmail_msg">
</blockquote></div>