Le compilateur JIT (Just In Time)
Que fait le compilateur JIT ?
PHP est le langage de programmation le plus populaire pour le développement web. Il s’agit d’un langage de script côté serveur qui peut être utilisé pour créer facilement des sites web et des applications web simples ou complexes. Il peut ainsi servir pour gérer le contenu dynamique, le suivi de sessions, les bases de données et même pour créer des sites e-commerce. PHP est intégré à diverses bases de données couramment employées, notamment MySQL, Oracle, PostgreSQL, Sybase, Microsoft SQL Server et Informix.
Tous les langages nécessitent des mises à jour régulières pour améliorer leurs fonctionnalités et leur sécurité. PHP n’échappe pas à la règle, et il passera cette année à la version 8 tant attendue.
En décembre 2020, PHP 8 sera une réalité pour les experts du digital. Cette version majeure vient avec plusieurs nouvelles fonctionnalités comme les Union Types, Static Return et les Weak Maps, mais c’est la fonctionnalité du compilateur JIT qui concentre l’attention de tous les développeurs.
Le compilateur JIT (Just In Time)
L’une des nouvelles fonctionnalités les plus intéressantes est donc la compilation JIT. Son introduction dans cette nouvelle version a pour but d’améliorer les performances des applications développées à partir du langage PHP. En théorie, le compilateur JIT augmentera la vitesse de l’application grâce à son mode de compilation des scripts PHP. Cette technique permettra de compiler des parties du code au moment de l’exécution, de façon que la version compilée puisse être utilisée à la place.
Que fait le compilateur JIT ?
La compilation Just In Time est un moyen de transformer l’Opcode PHP directement en langage machine compris par le processeur, toujours pour obtenir des performances supplémentaires.
JIT est implémenté comme une partie presque indépendante de l’OPcache, une extension pour mettre en cache les Opcodes afin que la compilation n’ait lieu que lorsqu’elle est requise. En PHP, JIT traitera les instructions générées pour la VM Zend, comme la représentation intermédiaire. Il générera ensuite un code machine dépendant de l’architecture afin que l’hôte de votre code ne soit plus la VM Zend, mais directement le CPU.
Avec le support JIT, les équipes de programmeurs seront en mesure de développer des fonctions intégrées en PHP sans impacter les performances. Cela rendra PHP moins sensible à la gestion de la mémoire, aux débordements et à d’autres problèmes similaires associés au développement basé sur le langage C.
C’est donc avec impatience que nous attendons la sortie de PHP 8 prévue en fin d’année, qui lancera officiellement le compilateur JIT. Nous espérons que cet article vous a été utile et vous a permis de mieux comprendre en quoi consiste cette nouvelle fonctionnalité, importante dans l’histoire des programmeurs. Si vous avez des questions, n’hésitez pas à nous écrire !