1

次のコードがあります。

        List<Long> array = new ArrayList<>();
        for (int i = 0; i < 30000; i++)
        {
            array.add(Long.valueOf(i));
        }
        for (int j = 0; j < 30000; j++)
        {
            for (int i = 0; i < 30000 - j; i++)
            {
                array.set(i, array.get(i) + j);
            }
        }

これをコンパイルして、ローカル マシン (JRE 1.7_0_71、Win 7 64 ビット、4 コア、8 GB RAM) の Oracle JVM で実行すると、実行に約 3.5 秒かかります。

1.run: 3446ms
2.run: 3485ms
3.run: 3546ms
4.run: 3721ms
5.run: 3573ms

IBM JVM (j9、java 7、ビルド pap6470_27sr2-20141101_01(SR2)) を搭載した AIX マシン (POWER7+、16 コア、64GB RAM) で実行すると、実行ごとにほぼ 9 秒で結果が得られます。

1.run: 8518ms
2.run: 8548ms
3.run: 8499ms
4.run: 8486ms
5.run: 9235ms

どこで捕まえることができますか?

4

2 に答える 2