Je suis l'évaluation de HipHop-PHP pour la compatibilité et la performance de notre base de code, mais je suis de très mauvaise performance lors de l'exécution avec le serveur web intégré est activé.
J'ai l'exemple suivant test de programme qui calcule une suite de Fibonacci.
ex3.php:
function fib($n)
{
if ($n <= 2)
return 1;
else
return fib($n-1) + fib($n-2);
}
$n = 36;
printf("fib(%d) = %d\n", $n, fib($n, 2));
Lorsque je l'exécute par le biais de HHVM à l'aide de la ligne de commande, j'obtiens des résultats impressionnants:
time hhvm -v"Eval.Jit=true" -f ./ex3.php
fib(36) = 14930352
real 0m0.267s
user 0m0.248s
sys 0m0.020s
Comparez cela avec le standard de PHP:
root@hiphop:/www# time php -f ./ex3.php
fib(36) = 14930352
real 0m5.606s
user 0m5.600s
sys 0m0.000s
Cependant, lorsque je veux activer le serveur web intégré dans HHVM, tous les gains de performance sont perdus:
hhvm -v"Eval.Jit=true" -m server -p 8000 &
time wget -qSO - http://localhost:8000/ex3.php
HTTP/1.1 200 OK
Content-Type: text/html; charset=utf-8
X-Powered-By: HPHP
Date: Sat, 27 Jul 2013 14:16:09 GMT
Content-Length: 19
fib(36) = 14930352
real 0m5.279s
user 0m0.000s
sys 0m0.000s
Comme vous pouvez le voir, je reçois la réponse de HHVM, mais il taks plus de 5 secondes pour traiter cette demande. Ce qui me manque?