Java 6中的性能优化

发表于:2008-8-28 15:01

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:未知    来源:程序员

  7、线性扫描寄存器分配算法(Linear Scan Register Allocation)

    一种新的寄存器分配策略,基于SSA(static single  assignment),性能提高10%左右。常用的寄存器分配算法将寄存器分配看作图着色问题,时间复杂度是O(n^4),不适用于Java的JIT编  译。原来的JVM里是根据一些本地启发式规则来分配寄存器,效果不太好,Java  6中使用的线性扫描寄存器算法能够达到与图颜色算法相似的效果,并且时间复杂度是线性的。

  8、并行缩并垃圾收集器(Parallel Compaction Collector)

  进行Full GC时使用并行垃圾收集(JDK 5里原来非Full GC是并行的但Full GC是串行的),使用-XX:+UseParallelOldGC开启这一功能

  9、并行低停顿垃圾收集器(Concurrent Low Pause Collector)

  显式调用gc(如System.gc)时也可以并行进行标记-清扫式垃圾收集,使用-XX:+ExplicitGCInvokesConcurrent开启。

  10、Ergonomics in the 6.0 Java Virtual Machine

  自动调整垃圾收集策略、堆大小等配置,这一功能在JDK 5中加入,JDK 6中得到显著增强,SPECjbb2005性能提高70%.

  11、boot类装载器的优化

  jre中增加一个描述package所在jar文件的元索引文件,加快classloader加载类性能,提高桌面Java应用启动速度(+15%)。内存占用也减少了10%

  12、图形程序优化

  在jvm启动之前显示splash.

  Swing程序中每个窗口有一个后台显示缓存,当该窗口原来被遮挡,现在要显示时直接从该缓存拷贝数据进行渲染,即使该窗口的绘制线程被阻塞也可以完成这一渲染。

22/2<12
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号