On 6/4/05, Michael Hind <[EMAIL PROTECTED]> wrote:
> 
> Instead, modern JVMs try to balance these compilation burps by using a
> strategy (selective optimization) that tries to ensure a method really is
> important enough to invoke the JIT on. This is often done by counting the
> number of times a method is called and is sometimes augmented with a loop
> count for the method (in case the method is called infrequently, but
> nevertheless a good chunk of execution time is spent in.) When this cheap
> profile indicates a method is important, the JIT is used to improve the
> generated code. Other systems use infrequent sampling (100/sec) of the
> call stack to find candidates to be JITed. Many such systems also use
> multiple levels of JIT optimizations (similar to a static compiler)
> depending on how important the method appears at runtime. Jikes RVM uses
> the sampling to plug into a simple cost/benefit model to determine what
> level (if any) of the JIT to use.


Is the sampling process done before running or during runtime? If it's done 
during runtime, does it mean that some methods may be compiled several times 
by different leveled JIT? 

-- 
Best Regards
Steven Gong

Reply via email to