出于某些原因,我想知道Java中一个特定的优化算法(GVN)的效果。
我关于如何做的想法是在禁用该算法之前和之后运行一个基准测试。然后比较了时间和空间的消耗。但我不知道如何在Java编译中禁用GVN。
是否有任何编译器参数可用于此操作?或者任何其他方法来找出一个特定的优化算法的效果?
我的jdk是jdk11,具有快速调试构建。谢谢!
发布于 2021-08-16 10:48:03
GVN不仅仅是一个优化--这是许多其他优化所依赖的基本编译阶段。在HotSpot C2编译器中没有JVM开关来关闭GVN。
但是,有一个标志-XX:-UseGlobalValueNumbering
用于C1编译器。此标志仅在JVM的调试构建中可用。
https://stackoverflow.com/questions/68797041
复制相似问题