JIT 编译器 - 编译器选择选项

JIT compiler - compiler choosing options

On 64 bit linux, with java8, when 运行 java command, 似乎所有3个选项 -client / -server / -d64 正在使用 64 位服务器编译器。

问题是:for 64bit linux with java8

查看文件jre/lib/amd64/jvm.cfg。您可能会看到行

-server KNOWN
-client IGNORE

这意味着 -client 选项被忽略。 -server 也什么都不做,因为 JDK 8 for x64 只有一个包含 C1 和 C2 编译器的 JVM,并且默认情况下启用分层编译。

with -XX:+TieredCompilation or without it

没关系,因为这个选项默认是开启的。 适用于客户端级和服务器级应用程序。通常不需要手动关闭它。