深入理解java虚拟机1.8_《深入理解Java虚拟机》读书笔记

一、晚期(运行期)优化

#栈空间大小 -xss

JDK1.7开始,栈空间默认为1M,JDK1.8同

#gc日志对应的参数列表

-XX:+PrintGC 输出GC日志

-XX:+PrintGCDetails 输出GC的详细日志

-XX:+PrintGCTimeStamps 输出GC的时间戳(以基准时间的形式)

-XX:+PrintGCDateStamps 输出GC的时间戳(以日期的形式,如 2013-05-04T21:53:59.234+0800)

-XX:+PrintHeapAtGC 在进行GC的前后打印出堆的信息

-Xloggc:../logs/gc.log 日志文件的输出路径

#示例,sas的配置:

-XX:+PrintGCDetails

-XX:+PrintGCTimeStamps

-XX:+PrintGCDateStamps

-XX:+PrintHeapAtGC

-Xloggc:/opt/wildfly/standalone/log/verbose.gc

#JIT编译

当编译工作完成后,这个方法的调用入口地址就会被系统自动改写成新的地址,下一次调用该方法是就会使用已编译的版本。

#主要的热点探测方式

基于采样的热点探测

基于计数器热点探测(方法调用计数器、回边计数器)

基于“踪迹”(trace)的热点探测

#OSR编译(On-Stack Replacement,栈上替换)回边计数器编译时采用

OSR是一种在运行时替换正在运行的函数/方法的栈帧的技术。但它是手段,不是目的——是出于某种目的需要在运行时替换栈帧。

#即时编译器优化技术一览

编译器策略

基于性能监控的优化技术

基于证据的优化技术

数据流敏感重写

语言相关的优化技术

内存及代码位置变换

循环变换

全局代码调整

控制流图变换

#方法内联(Method Inlining)

内联的主要目的有两个,一是去除方法调用的成本(如建立栈帧等),二是为其他优化建立良好的基础。

标签:Java,读书笔记,虚拟机,计数器,编译,XX,GC,日志,优化

来源: https://www.cnblogs.com/atai/p/12206157.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值