PHP7がリリースされて、速度改善も今回のリリース内容に含まれていますが、、、
実際にどれくらい早くなったのか検証してみようと思います。
検証するプログラム
フィボナッチで簡単な再帰処理をさせてみます。
顕著に違いを出すために、メモ化は未使用の状態で。
fib.php
<?php
$start = microtime(true);
fib(35);
$end = microtime(true);
echo "Start: {$start}\n\n";
echo "End: {$end}\n\n";
$time = $end - $start;
echo "Time: {$time} sec. \n\n";
echo "Fin.\n\n";
function fib($n) {
if ($n === 0) {
return 1;
}
if ($n === 1) {
return 2;
}
return fib($n - 1) + fib($n -2);
}
まずPHP5.6
約33秒ほどかかっていますね。
何回か実行してみましたが、32〜36秒あたりが多くそこらへんは誤差の範囲なんでしょうか。
※なぜか私の環境では速度が異常に遅いようです。(コメント参照)
次にPHP7
約2秒です!!!!
劇的に早くなってますね(/・ω・)/
このプログラムだけで言うとだいたい15-18倍くらいの速度になってます。
まぁ◯倍という数値はこれだけの検証だとアテになりませんが、
私の環境だと異常に遅いようなので、数値は全くアテにならないと思われます。
とりあえず早くなっているというのは明らかですね!
PHP7を取り入れるには色々と弊害がありそうですが、これだけパフォーマンスが良くなるのなら取り入れる価値はありですね。