在2.3 Ghz cpu中增加20亿

时间:2013-11-20 05:19:22

标签: performance cpu frequency instructions

这个简单的代码片段输出范围为11 - 13毫秒。现在assuming为了问题,x的增量只是一条指令,2.3Ghz的心灵应该花费一秒钟来执行,因为intMAX的值接近20亿。为什么答案按几毫安(11-13毫升)而不是秒(900毫升--1100毫安)?

    long time1 = System.currentTimeMillis();
    int x = 0;
    while (x < Integer.MAX_VALUE) {
        x++;
    }
    System.out.println(System.currentTimeMillis() - time1);

1 个答案:

答案 0 :(得分:2)

理论上 - 这可以优化到x = Integer.MAX_VALUE,然后如果x之后没有使用,则完全删除

越来越难以测试事情需要花多长时间才能得到优化,特别是如果未使用

尝试将x设置为不同的起始值,并在计时器之后使用x进行打印或其他导致打印的计算