从Sun JRE
性能调整白皮书中,-XX:+AggressiveOpts
标记描述为:
打开预期在即将发布的版本中默认启用的点性能优化。按此标志分组的更改是对JVM运行时编译代码的较小更改,而不是不同的性能功能(例如BiasedLocking和ParallelOldGC)。这是尝试JVM工程团队针对即将发布的版本进行最新性能调整的好标志。注意:此选项是实验性的!此选项启用的特定优化可能因发行版本而异,甚至可能因构建而异。在部署新版本的Java之前,应重新评估此选项的效果。
我的性能测试表明,使用-XX:+AggressiveOpts
实际上对我的应用程序有帮助,但是由于这被标记为实验性的,因此我要谨慎使用它(过去我被它所困扰)。因此,我想知道-XX:+AggressiveOpts
1.6u20
启用了哪些标志。通常,我通过查看文件中的方法Arguments::set_aggressive_opts_flags()
来执行此hotspot/src/share/vm/runtime/arguments.cpp
操作,但是在http://download.java.net/jdk6/source/上找不到1.6u20的源。
-XX:+AggressiveOpts
启用哪些标志吗?要检查其特定版本:
java -XX:-AggressiveOpts -XX:+UnlockDiagnosticVMOptions -XX:+PrintFlagsFinal -version > no_agg
java -XX:+AggressiveOpts -XX:+UnlockDiagnosticVMOptions -XX:+PrintFlagsFinal -version > agg
然后制作diff(diff -U0 no_agg agg
)。
例如,jdk 1.7.0_51:
- bool AggressiveOpts := false {product}
+ bool AggressiveOpts := true {product}
- intx AutoBoxCacheMax = 128 {C2 product}
+ intx AutoBoxCacheMax = 20000 {C2 product}
- intx BiasedLockingStartupDelay = 4000 {product}
+ intx BiasedLockingStartupDelay = 500 {product}
- bool UseFPUForSpilling = false {C2 product}
+ bool UseFPUForSpilling = true {C2 product}
JDK 1.8.0:
- bool AggressiveOpts := false {product}
+ bool AggressiveOpts := true {product}
- intx AutoBoxCacheMax = 128 {C2 product}
+ intx AutoBoxCacheMax = 20000 {C2 product}
- intx BiasedLockingStartupDelay = 4000 {product}
+ intx BiasedLockingStartupDelay = 500 {product}
- bool EliminateAutoBox = false {C2 product}
+ bool EliminateAutoBox = true {C2 product}
- bool UseFPUForSpilling = false {C2 product}
+ bool UseFPUForSpilling = true {C2 product}
本文向大家介绍HTML5标准提供了哪些新的API?你有用过哪些?相关面试题,主要包含被问及HTML5标准提供了哪些新的API?你有用过哪些?时的应答技巧和注意事项,需要的朋友参考一下 两个选择器API 地理定位API 多媒体API 拖放API 文件API XHR2 本地储存API canvas svg
问题内容: 除了MVC,我需要了解iPhone开发中使用的设计模式。 请以任何示例说明或示例代码作为答复。 谢谢。 问题答案: 抽象工厂 抽象工厂模式提供了一个接口,用于创建相关或相关对象的族,而无需指定其具体类。客户与从工厂获得的具体对象的任何细节都没有关联。 适配器 适配器设计模式将类的接口转换为客户端期望的另一个接口。适配器使类可以协同工作,否则由于接口不兼容而无法实现。它将客户端与目标对象
问题内容: 我在这里找到了JVM标志。关于它们的作用有更详细的解释吗? 问题答案: 设置此标志会将JVM进行的所有垃圾收集写入日志文件(或stdout,但它的用处不大),并且可以使用[此处](http://codingdict.com/questions/2045提到的工具进行分析。使用此信息,您可以微调垃圾回收配置。
有人能解释一下,WSDL文档的哪些标签描述了Web服务的合约吗?示例: 我知道xmlns:soap=”http://schemas.xmlsoap.org/wsdl/soap/“关注SOAP绑定和xmlns:http=”http://schemas.xmlsoap.org/wsdl/http/“关注HTTP GET POST请求,但我不知道如何确定web服务的契约。提前感谢
问题内容: 我想在我的JVM上尝试CompressedOops。不,我不知道默认情况下是否可以启用它。我在debian / squeeze上运行此jvm: 有人说它是默认启用的,有人说没有启用: 来自:http : //forums.yourkit.com/viewtopic.php?f=3&t=3185 是的,您是对的,我也选中了它,并且在Java6u21 64位中默认情况下未激活Compres
我有一个注释用于像这样定义的方法或字段: 我想阻止用户在记录上使用它,因为在该上下文中使用此注释是没有意义的。这样做似乎不应该编译,因为我没有将指定为有效的。 不过,以下编译正常: 但是这个带有紧凑构造函数的表单无法使用“java:注解类型不适用于这种声明”进行编译——这实际上是我所期望的。