美文网首页JAVAJavaPerformace
Chapter7-JVM性能调优入门

Chapter7-JVM性能调优入门

作者: andersonoy | 来源:发表于2017-07-23 21:39 被阅读31次
    • 大页面支持
      • Linux上的大页面支持
        • 1.-XX:+UseLargePages
        • 2.修改OS的配置(依据Linux发行版和内核不同,其修改也不同)
        • 3.如Linux中大页面配置不正确, HotSpot VM会接受上面选项,但是会报告无法获取大页面,最后回退到OS默认支持的页面大小
        • 4.了解即可, 基本碰不到要配置此参数


    • 逃逸分析(escape analysis)
      • -XX:+DoEscapeAnalysis
      • 评估Java对象可见范围, 尤其是指由某个线程创建的Java对象在另一个线程中可以访问,此时称该对象逃逸了.
      • 如果Java对象不发生逃逸,则可以采取其他方法进行优化,这种优化技术称为逃逸分析
      • JIT编译器可以采取的优化技术有
        • 1.对象展开
        • 2.标量替换
        • 3.栈上分配
          • 线程的栈帧上分配而非堆,由于对象不逃逸,不被其他线程访问,则可以在线程私有的栈帧上分配,减少堆上对象的数目,减轻gc的频率
        • 4.消除同步
          • 如果该对象不逃逸,则当前线程持有该对象锁,其他线程访问不了该对象,则该锁可以由JIT消除
        • 5.消除垃圾收集的读/写屏障
          • 对象不逃逸,该对象只能从线程本地的根节点访问,因此在其他对象中存储其地址时不需要执行读或写屏障
          • 只有在对象可以被另一个线程访问时才需要读/写屏障
          • 读或写屏障

    • 极端示例

    相关文章

      网友评论

        本文标题:Chapter7-JVM性能调优入门

        本文链接:https://www.haomeiwen.com/subject/uutvkxtx.html