代码拉取完成,页面将自动刷新
同步操作将从 闲.大赋(李家智)/java-performance 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
package com.ibeetl.code.jit;
import org.openjdk.jmh.annotations.*;
import org.openjdk.jmh.runner.Runner;
import org.openjdk.jmh.runner.RunnerException;
import org.openjdk.jmh.runner.options.Options;
import org.openjdk.jmh.runner.options.OptionsBuilder;
import java.util.concurrent.TimeUnit;
/**
* 解释执行和编译执行的区别
* @author 公众号 java系统优化
*/
@BenchmarkMode(Mode.AverageTime)
@Warmup(iterations = 10)
@Measurement(iterations = 10, time = 1, timeUnit = TimeUnit.SECONDS)
@Threads(1)
@OutputTimeUnit(TimeUnit.NANOSECONDS)
@State(Scope.Benchmark)
public class ClientTest {
int x=0,y=0;
/**
* 解释执行
* @return
*/
@Benchmark
@Fork(value=1,jvmArgsAppend="-Xint")
@CompilerControl(CompilerControl.Mode.DONT_INLINE)
public int bytecode(){
return x+y;
}
/**
* 没有-Xint,都是编译执行
* @return
*/
@Benchmark
@Fork(value=1)
public int machinecode(){
return x+y;
}
private int add(int x,int y){
return x+y;
}
@Setup
public void init(){
x =1;
y= 2;
}
public static void main(String[] args) throws RunnerException {
Options opt = new OptionsBuilder()
.include(ClientTest.class.getSimpleName())
.build();
new Runner(opt).run();
}
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。