java inlined_java – JIT自动内联的方法大小是多少?

HotSpot JIT内联策略相当复杂.它涉及许多启发式方法,如调用方法大小,被调用方法大小,IR节点计数,内联深度,调用计数,调用站点计数,投掷计数,方法签名等.

对于访问器方法(getter / setter)和普通方法(字节码计数小于6),会跳过某些限制.

相关的源代码大多在bytecodeInfo.cpp.

请参阅InlineTree :: try_to_inline,should_inline,should_not_inline函数.

用于控制内联的主要JVM标志是

-XX:MaxInlineLevel (maximum number of nested calls that are inlined)

-XX:MaxInlineSize (maximum bytecode size of a method to be inlined)

-XX:FreqInlineSize (maximum bytecode size of a frequent method to be inlined)

-XX:MaxTrivialSize (maximum bytecode size of a trivial method to be inlined)

-XX:MinInliningThreshold (min. invocation count a method needs to have to be inlined)

-XX:LiveNodeCountInliningCutoff (max number of live nodes in a method)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值