On 12/7/06, Rana Dasgupta <[EMAIL PROTECTED]> wrote:
On 12/7/06, Mikhail Fursov <[EMAIL PROTECTED]> wrote: > > > > >I mean that if the whole test is in the one method the optimized method > version will never be >executed unless we have on stack replacement support. > > Yes, I understand now thanks. I also noticed your hotnessPercent setting to 0 in the other em config email :-)
Hotness percent is a relative hotness of a helper in comparison to the method's entry node. For example if a method was executed 1000 times, helper was executed 50 times and hotness percent for the helper is 5 the helper will be inlined. If hotness percent is 4, the helper will not be inlined. In static mode (like -Xem:opt) static profiler is used to estimate execution count of every node. If hotness percent is 0 - every helper will be inlined.
>I attached the file. Put it to the default dir and use -Xem:opt_plus cmd > line > Noting came through as attached, BTW.
It's strage, I see your attachment and we are both using gmail. Here is opt_plus.emconf inlined: ------------------------------------------------- # EM configuration file for CS_OPT-only mode of Jitrino. This is 'client static' mode chains=chain1 chain1.jits=CS_OPT CS_OPT.file=jitrino # Options to be passed to JIT -XDjit.CS_OPT.path=opt_init,translator,optimizer,hir2lir,codegen -XDjit.CS_OPT.path.optimizer=ssa ,devirt,inline,uce,purge,simplify,dce,uce,lazyexc,inline_helpers,purge,simplify,uce,dce,memopt,simplify,dce,uce,lower,dessa,statprof,markglobals -XDjit.CS_OPT.path.codegen=lock_method ,bbp,gcpoints,cafl,dce1,i8l,early_prop,itrace-,native,constraints,dce2,regalloc,spillgen,layout,copy,rce+,stack,break-,iprof-,emitter!,si_insts,gcmap,info,unlock_method -XDjit.CS_OPT.path.dce1=cg_dce -XDjit.CS_OPT.path.dce2=cg_dce -XDjit.CS_OPT.path.regalloc=bp_regalloc1,bp_regalloc2 -XDjit.CS_OPT.path.bp_regalloc1=bp_regalloc -XDjit.CS_OPT.path.bp_regalloc2=bp_regalloc #inliner configuration -XDjit.CS_OPT.CS_OPT_inliner_pipeline.filter=- -XDjit.CS_OPT.CS_OPT_inliner_pipeline.path=ssa,devirt -XDjit.CS_OPT.arg.optimizer.inline.pipeline=CS_OPT_inliner_pipeline #helper inliner configuration -XDjit.CS_OPT.CS_OPT_helper_inliner_pipeline.filter=- -XDjit.CS_OPT.CS_OPT_helper_inliner_pipeline.path=ssa - XDjit.CS_OPT.arg.optimizer.inline_helpers.pipeline=CS_OPT_helper_inliner_pipeline -XDjit.CS_OPT.arg.optimizer.inline_helpers.newObj=on - XDjit.CS_OPT.arg.optimizer.inline_helpers.newObj_className=org/apache/harmony/drlvm/gc_cc/GCHelper -XDjit.CS_OPT.arg.optimizer.inline_helpers.newObj_methodName=alloc -XDjit.CS_OPT.arg.optimizer.inline_helpers.newObj_hotnessPercent=0 -XDjit.CS_OPT.arg.codegen.dce1.early=yes -XDjit.CS_OPT.arg.codegen.regalloc.bp_regalloc1.regs=ALL_GP -XDjit.CS_OPT.arg.codegen.regalloc.bp_regalloc2.regs=ALL_XMM #- XDjit.CS_OPT.arg.log.irdump.file=log/%jit%/%log%/%seqnb%_%class%.%method%.log #-XDjit.CS_OPT.arg.log=ct,ir,irdump,all #system properties -Djava.compiler=client static #GC magics support -Dvm.components.gc_cc.startupclass=org.apache.harmony.drlvm.gc_cc.GCHelper -XDvm.component.classpath.gc_cc=gc_cc.jar -------------------------------------------------
