Un refactoring de PHP 5.5 améliore ses performances de 10 à 30%
Wordpress 3.6 gagne 20% en termes de vitesse d'exécution

Le , par Arsene Newman, Chroniqueur Actualités
Dimitry Stogov, ingénieur chez Zend Technologies, société dont le moteur de script du même nom est le moteur interne de PHP, vient d’annoncer une optimisation des performances de PHP 5.5, après un travail acharné de plus de quatre mois.

Après avoir dûment analysé les cycles CPU d’une application PHP qui se répartissent comme suit : 20% du temps CPU pour la gestion de la mémoire, 10% pour les opérations relatives aux tables de hachages, 30% pour les fonctions internes et enfin 30% pour la VM, Stogov décide de s’attaquer à l’optimisation de la VM, en appliquant des technologies JIT. Toutefois, cela n’améliore pas grandement les performances. Alors, une seconde approche a été décidée, plus radicale et plus difficile : faire un refactoring du moteur PHP.

Le refactoring en question touche la représentation mémoire de certaines variables sous le moteur PHP (moteur Zend), en passant d’une représentation basée principalement sur des pointeurs et des références à une représentation sous forme de données structurées, ce qui a permis une amélioration conséquente des performances du moteur PHP, de l’ordre de 10 à 30% en termes de vitesse d’exécution.

Preuve en est, Stogov s’est lancé dans différents benchmarks de certains programmes utilisant PHP comme Wordpress 3.6 et Drupal 6.1. Ces derniers ont alors affiché une amélioration des performances de 20% et 11.7% respectivement.

Tout cela s’annonce donc de bons augures pour les performances des programmes basés sur PHP, même si le gain obtenu grâce à ce refactoring diffère sensiblement d’un programme à un autre.

Enfin, Stogov a annoncé que d’autres améliorations sont à prévoir. Certaines sont encore à l’étude ou n’ont pas encore passé les tests0. Son travail devrait donc aboutir à de meilleurs résultats.

Source : Annonce de Stogov, Détails techniques sur le refactoring

Et vous ?

Qu’en pensez-vous ?


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de Tsilefy Tsilefy
http://www.developpez.com
Membre émérite
le 08/05/2014 22:10
J'en pense que certains doivent sentir le souffle fétide de Hack dans leur nuque :-)

Zend cherche à positionner PHP comme une solution entreprise viable depuis des années, et à se positionner comme étant l'acteur majeur de ce marché. L'arrivée de Facebook et ses gros sabots les fait réagir, vive la concurrence!

Toute amélioration de l'implémentation est bonne à prendre, mais il est à noter que pour l'instant rien ne garantit que cette nouvelle version du moteur fasse un jour partie de PHP. C'est "juste" une contribution qui fera l'objet d'un RFC comme les autres.
Avatar de Zefling Zefling
http://www.developpez.com
Membre Expert
le 09/05/2014 1:42
Je suis curieux de voir ce que ça peut donner sur mon framework. 10-20 % ça sera toujours ça de pris.
Avatar de rthomas rthomas
http://www.developpez.com
Nouveau Membre du Club
le 09/05/2014 6:52
.NET fait cela depuis ... le début
Avatar de Shuty Shuty
http://www.developpez.com
Membre émérite
le 09/05/2014 11:12
Citation Envoyé par rthomas  Voir le message
.NET fait cela depuis ... le début

J'en connais un qui cherche la bagarre...

Zend que je connais seulement à travers son framework ZF2 est une entreprise à forte valeur. Je ne vois pas pourquoi nous ne pourrions pas leurs faire confiance.
Avatar de redcurve redcurve
http://www.developpez.com
Membre actif
le 09/05/2014 11:30
Citation Envoyé par rthomas  Voir le message
.NET fait cela depuis ... le début

Il est vrai que les refactoring voir refonte complète de parties de la CLR est assez courant en dotnet
Avatar de berceker united berceker united
http://www.developpez.com
Expert Confirmé Sénior
le 09/05/2014 17:51
Oui oui mais bon, des performances qui vont pas forcément se ressentir. Au lieu de ******* les mouches, ils devraient consacrer leur temps à PHP6.
Avatar de Tsilefy Tsilefy
http://www.developpez.com
Membre émérite
le 09/05/2014 18:36
PHP 6 est un objectif mythique qui n'arrivera pas de sitôt mais tout ce qu'on attendait de PHP 6 (sauf unicode en natif) est déjà présent dans les versions actuelles. Je me demande même s'ils ne feraient pas mieux de passer directement à PHP 7 et d'oublier PHP 6 pour de bon (car ce nom est déjà souillé).
Avatar de Gruik Gruik
http://www.developpez.com
Membre Expert
le 09/05/2014 22:27
J'aimerais bien connaître le gain de performance sur Magento
Avatar de negstek negstek
http://www.developpez.com
Membre éprouvé
le 20/05/2014 8:03
Citation Envoyé par Arsene Newman  Voir le message
Dimitry Stogov, ingénieur chez Zend Technologies, société dont le moteur de script du même nom est le moteur interne de PHP

je savais pas que Zend était le moteur interne de PHP, j'ai toujours cru qu'il s'agissait en fait d'un framework PHP... Paies ta news
Avatar de Celira Celira
http://www.developpez.com
Modératrice
le 20/05/2014 10:02
Il ne faut pas confondre :
  • Zend Technologies (la société)
  • Zend Framework (le framework PHP développé par la société)
  • Zend Server (le serveur d'application PHP développé par la société)
  • Zend Engine (le moteur de script qui fait tourner PHP)


Le problème c'est que la plupart des gens disent "Zend" pour n'importe lequel (le plus souvent pour ZF). Du coup, on s'emmêle facilement
Offres d'emploi IT
Chef de projet
CDI
CGI - Ile de France -
Parue le 30/09/2014
Ingénieur en conception / gestion des exigences (H/F)
CDI
NEO SOFT - Bretagne - Rennes (35000)
Parue le 21/10/2014
Développeur h/f dotnet sql serveur
CDI
MacroProg - Ile de France - Paris (75000)
Parue le 17/10/2014

Voir plus d'offres Voir la carte des offres IT
 
 
 
 
Partenaires

PlanetHoster
Ikoula