JVM TLAB与GC测试

来源:互联网 发布:石头人升级数据 编辑:程序博客网 时间:2024/05/16 07:54
public class Test07 {

public static void alloc(){
byte[] b= new byte[2];
}


public static void main(String[] args) {
long start = System.currentTimeMillis();
//TLAB分配+UseTLAB使用TLAB +PrintTLAB查看TLAB信息 TLABSize设置TLAB大小  TLABRefillWasteFraction=100 设置维护进入TLAB空间的单个对象大小 -DoEscapeAnalysis 禁用逃逸分析 
//参数:-XX:+UseTLAB -XX:+PrintTLAB -XX:+PrintGC -XX:TLABSize=102400 -XX:TLABRefillWasteFraction=100 -XX:-DoEscapeAnalysis
for(int i=0;i<1000000000;i++){
alloc();
}
long end = System.currentTimeMillis();

System.out.println(end-start);
}

}


@WebServlet(asyncSupported = true,description="TestServlet",urlPatterns={"/Test"})
public class TestServlet extends HttpServlet{


@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
this.doPost(req, resp);
}

/*
* 请求案例为10个线程访问该接口1000次
* */


/*
-XX:+PrintGCDetails 打印日志 -Xmx32M 最大内存32M -Xms32M 初始化大小32M
-XX:+HeapDumpOnOutOfMemoryError
-XX:+UseSerialGC 串行的垃圾回收
-XX:PermSize=32M 方法区32M
吞吐量信息 966 流量信息109
* */


/*
-Xmx512M 扩大最大内存512M 
-Xloggc:d:/gc.log 日志输出到D盘
扩大内存之后吞吐量信息 1746 流量信息197
* */

/*
-Xms128M 扩大初始内存 128M 
扩大内存之后吞吐量信息 4364 流量信息494
* */

/*
换垃圾收集器 并行垃圾收集器 -XX:+UseParNewGC 之前的-XX:+UseSerialGC 为单核
扩大内存之后吞吐量信息 2449 流量信息277
* */


/*
换垃圾收集器 并行垃圾收集器 -XX:+UseParallelGC   -XX:+UseParallelOldGC -XX:ParallelGCThreads=8
扩大内存之后吞吐量信息 3192 流量信息361
* */
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
//System.out.println("访问服务器");
byte[] data = new byte[1024*1024];
}




}

原创粉丝点击