<bdo id='lxi0R'></bdo><ul id='lxi0R'></ul>
<tfoot id='lxi0R'></tfoot>
<i id='lxi0R'><tr id='lxi0R'><dt id='lxi0R'><q id='lxi0R'><span id='lxi0R'><b id='lxi0R'><form id='lxi0R'><ins id='lxi0R'></ins><ul id='lxi0R'></ul><sub id='lxi0R'></sub></form><legend id='lxi0R'></legend><bdo id='lxi0R'><pre id='lxi0R'><center id='lxi0R'></center></pre></bdo></b><th id='lxi0R'></th></span></q></dt></tr></i><div id='lxi0R'><tfoot id='lxi0R'></tfoot><dl id='lxi0R'><fieldset id='lxi0R'></fieldset></dl></div>

    1. <legend id='lxi0R'><style id='lxi0R'><dir id='lxi0R'><q id='lxi0R'></q></dir></style></legend>

      <small id='lxi0R'></small><noframes id='lxi0R'>

      -XX:-TieredCompilation 究竟是做什么的?

      What exactly does -XX:-TieredCompilation do?(-XX:-TieredCompilation 究竟是做什么的?)

        <tfoot id='6ckCX'></tfoot>

            <bdo id='6ckCX'></bdo><ul id='6ckCX'></ul>
              <tbody id='6ckCX'></tbody>
            <i id='6ckCX'><tr id='6ckCX'><dt id='6ckCX'><q id='6ckCX'><span id='6ckCX'><b id='6ckCX'><form id='6ckCX'><ins id='6ckCX'></ins><ul id='6ckCX'></ul><sub id='6ckCX'></sub></form><legend id='6ckCX'></legend><bdo id='6ckCX'><pre id='6ckCX'><center id='6ckCX'></center></pre></bdo></b><th id='6ckCX'></th></span></q></dt></tr></i><div id='6ckCX'><tfoot id='6ckCX'></tfoot><dl id='6ckCX'><fieldset id='6ckCX'></fieldset></dl></div>
            <legend id='6ckCX'><style id='6ckCX'><dir id='6ckCX'><q id='6ckCX'></q></dir></style></legend>

          • <small id='6ckCX'></small><noframes id='6ckCX'>

              • 本文介绍了-XX:-TieredCompilation 究竟是做什么的?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                问题描述

                使用 java -XX:+PrintFlagsFinal 我找到了 TieredCompilation 标志,并在网上阅读了一下.

                Using java -XX:+PrintFlagsFinal I found the TieredCompilation flag, and I read about it a bit online.

                然而,我仍然不知道确切将它设置为 false 时会发生什么.

                Yet, I still don't know exactly what happens when setting it to false.

                我知道编译系统支持5个执行级别,基本上分为解释器、C1和C2:

                I know that the compilation system supports 5 execution levels, basically splitted into interpreter, C1 and C2:

                • 0 级 - 口译员
                • 1 级 - 完全优化的 C1(无分析)
                • 2 级 - C1 带调用和后端计数器
                • 3 级 - 具有完整分析的 C1(2 级 + MDO)
                • 4 级 - C2

                来源:http:///hg.openjdk.java.net/jdk8u/jdk8u/hotspot/file/2b2511bd3cc8/src/share/vm/runtime/advancedThresholdPolicy.hpp#l34

                两个问题:

                (1) 通过设置-XX:-TieredCompilation,是否只是禁用了某些级别?如果是,是哪个?

                (1) By setting -XX:-TieredCompilation, are some of this levels just disabled? If yes, which?

                (2) 是否有一些标志来决定是否禁用 C1 或 C2,或者根本不编译?

                (2) Is there some flag to decide whether to disable C1 or C2, or to not compile at all?

                推荐答案

                -XX:-TieredCompilation 禁用中间编译层(1、2、3),以便解释或编译方法处于最大优化级别 (C2).

                -XX:-TieredCompilation disables intermediate compilation tiers (1, 2, 3), so that a method is either interpreted or compiled at the maximum optimization level (C2).

                作为副作用,TieredCompilation 标志还会更改编译器线程的数量、编译策略和默认代码缓存大小.请注意,禁用 TieredCompilation

                As a side effect TieredCompilation flag also changes the number of compiler threads, the compilation policy and the default code cache size. Note that with TieredCompilation disabled

                • 编译器线程会更少;
                • 将选择简单的编译策略(基于方法调用和后端计数器)而不是 高级编译策略;
                • 默认保留代码缓存大小将为 小 5 倍.

                要禁用 C2 编译器并只保留 C1 而没有额外开销,请设置 -XX:TieredStopAtLevel=1.

                To disable C2 compiler and to leave only C1 with no extra overhead, set -XX:TieredStopAtLevel=1.

                要禁用所有 JIT 编译器并在解释器中运行所有内容,请使用 -Xint.

                To disable all JIT compilers and to run everything in interpreter, use -Xint.

                这篇关于-XX:-TieredCompilation 究竟是做什么的?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

                相关文档推荐

                Bytecode features not available in the Java language(Java 语言中不可用的字节码功能)
                ClassCastException because of classloaders?(ClassCastException 因为类加载器?)
                How can I add a Javaagent to a JVM without stopping the JVM?(如何在不停止 JVM 的情况下将 Javaagent 添加到 JVM?)
                Cannot load 64-bit SWT libraries on 32-bit JVM ( replacing SWT file )(无法在 32 位 JVM 上加载 64 位 SWT 库(替换 SWT 文件))
                Encourage the JVM to GC rather than grow the heap?(鼓励 JVM 进行 GC 而不是增加堆?)
                Why a sawtooth shaped graph?(为什么是锯齿形图形?)
                  <tbody id='cTIg5'></tbody>

                  <small id='cTIg5'></small><noframes id='cTIg5'>

                  <tfoot id='cTIg5'></tfoot>
                  • <bdo id='cTIg5'></bdo><ul id='cTIg5'></ul>

                    1. <legend id='cTIg5'><style id='cTIg5'><dir id='cTIg5'><q id='cTIg5'></q></dir></style></legend>
                          <i id='cTIg5'><tr id='cTIg5'><dt id='cTIg5'><q id='cTIg5'><span id='cTIg5'><b id='cTIg5'><form id='cTIg5'><ins id='cTIg5'></ins><ul id='cTIg5'></ul><sub id='cTIg5'></sub></form><legend id='cTIg5'></legend><bdo id='cTIg5'><pre id='cTIg5'><center id='cTIg5'></center></pre></bdo></b><th id='cTIg5'></th></span></q></dt></tr></i><div id='cTIg5'><tfoot id='cTIg5'></tfoot><dl id='cTIg5'><fieldset id='cTIg5'></fieldset></dl></div>