【问题标题】:Java: Difference between Java Hotspot Server Compiler and Client CompilerJava:Java Hotspot 服务器编译器和客户端编译器的区别
【发布时间】:2015-03-30 09:39:05
【问题描述】:

今天,当我从http://docs.oracle.com/javase/7/docs/technotes/guides/vm/performance-enhancements-7.html 阅读JVM 中的Escape Analysis 时。在此,他们讨论了Java Hotspot Server Compiler。我很困惑 Java 中的 Server Compiler 是什么。我也是谷歌,他们使用Java Hotspot Client Compiler。我仍然没有抓住,服务器和客户端编译器实际上是什么?服务端编译器和普通的 JDK 有区别还是 JVM 的一部分?

【问题讨论】:

  • 当你使用 -server 标志运行 java 时。
  • @assylias - 我认为 OP 很困惑,因为他们使用术语 compiler 而不是 JIT compiler 明确

标签: java jvm compiler-optimization


【解决方案1】:

他们在谈论 Hotspot VM 中的 JIT(即时)编译器。

Java Hotspot Client Compiler - 通常用于客户端环境 (更少的处理)

为应用程序和小程序提供改进的运行时性能。 Java HotSpot 客户端 VM 已经过专门调整以减少 应用程序启动时间和内存占用,使其特别 非常适合客户端环境。

Java 热点服务器编译器 Java HotSpot Server VM 类似 到 Java HotSpot 客户端 VM,除了它已经被特别调整 最大限度地提高峰值运行速度。它用于运行 运行时间最快的服务器应用程序 可能的运行速度通常比拥有 最快的启动时间。

查看thisthis了解详细说明。

【讨论】:

  • 你好@TheLostMind,我的主要问题是,这些是JVM或JDK的部分。他们是由 JVM 内部使用,还是用户将这些机器用于特殊用途?
  • @HarmeetSinghTaara - 它们是 JVM 的一部分
  • 这些是 JVM 使用的,不是直接用户与之交互的。根据您的回答,They are talking about the JIT (Just-in-Time) compiler 这意味着这些是 JIT 的一部分?
  • @HarmeetSinghTaara - JIT 编译器有两种风格,客户端和服务器
猜你喜欢
  • 2016-01-27
  • 1970-01-01
  • 2017-09-28
相关资源
最近更新 更多