文档

文档/技术

结构多样性与 JIT

在尊重应用运行预算的同时,限制可重复捷径的价值。

Representation portfolioStructural auditJIT budget

目标不只是不同的字节#

种子可以改变常量和名称,却保留分析者利用的结构捷径。表示组合会比较候选的结构指纹、代数族及边界特征。参数变化与还原问题本身的变化,是不同层次的多样性。

考虑优化简化#

字节码中复杂的表达式可能在优化后简化。引擎对部分 HotSpot C2 规范化行为建模,并检查候选的结构坍缩。可观察等价最小化也会移除不影响所需输出位的扰动。没有可观察作用的复杂性,不应成为选择表示的主要理由。

这些是基于模型的选择信号,并非对所有 JVM 的实测,也不是抵抗所有优化器的证明。最终运行测量仍需针对目标应用及 JVM 配置完成。

分离产物与运行时预算#

类文件大小与运行时成本是不同约束。选择可考虑方法字节数、常量池压力、模型化 JIT 内联和节点预算、活跃标量状态及热点分配。区域分类区分热点循环、常规业务逻辑与低频高价值路径,而非假定所有位置都适用相同表示。

审查实际发布内容#

若旁边仍保留更容易的等价路径,加强后的路径就可能失去价值。因此发布审查不仅关注转换后的方法体,也包括替代分支暴露与元数据泄漏。源码项目包含针对性的清单检查和归档清理检查;开发诊断与辅助还原数据应保留在分发产物之外。

联系团队