On Tue, 05 Jan 2016 07:39:31 -0600,
Alexander Shopov wrote:
> 
> > break up your big function into small ones.
> Apart from the obvious maintainability concerns - is there some rule
> of thumb - how big a function shoul be in order to be inlined either
> compile time or run time. If a code path is hot - what could stop the
> inlining?

While there's a hard size limit beyond which functions can't get
inlined, inlining most often stops because it performed "enough"
inlining starting from a given call site.

For each call site, the inliner starts with some amount of "fuel", which
is consumed after each successful inlining, proportional to the size of
the inlined function. Once the profiler runs out of fuel, it stops.

If you're interested in learning more about how the profiler affect your
programs, try the Optimization Coach DrRacket tool, which reports on
(among others) what the inliner does.

Vincent

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to racket-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to