0

反復を伴う PHP のベンチマークのために、大きな for ループを検討しました

for($j=0;$j<20000000;$j++)
    ;

eAccelerator を有効にした PHP 5.4 で同じことを実行すると、約2.5 秒かかります。

.jsp ファイルの同じループには約15 ミリ秒かかります

for(int j=0;j<20000000;j++)
    ;

両者にこれほど大きな違いがあるのはなぜでしょうか。PHPでより速く動作させる方法はありますか

4

2 に答える 2

4

15msで、ループはおそらくJITによって最適化されました。HipHop VMを使用していない限り、 PHPループは実際にはチャンスがありません

タイトループのパフォーマンスは、実際のワークロードを使用した現実の世界での相対的なパフォーマンスを表すものではないことに注意してください。代わりに、コンピューター言語ベンチマークゲームをチェックしてください 。さらにはるかに意味のある測定値を一粒の塩で測定する必要があります。

于 2012-11-12T03:33:01.583 に答える
0

これらのタイプのマイクロ ベンチマークは問題ではありません。

とにかく、このループはわずかに高速です。

$i = 20000000;
while($i--);

http://benchmarksgame.alioth.debian.org/u32/compare.php?lang=java&lang2=php

于 2012-11-12T03:34:26.190 に答える