GraalPHP : une implémentation de PHP sur GraalVM

Par:
fredericmazue

jeu, 01/10/2020 - 14:25

GraalVM est une machine virtuelle développée par Oracle. Cette machine virtuelle est dite "universelle", car elle est capable d'exécuter nombreux langages de programmation : Scala, Kotlin, Clojure, C, C++, JavaScript, Python, Ruby,... et désormais PHP grâce à GraalPHP.

GraalPHP est le travail de thèse d'un informaticien nommé Andrin Bertschi. Le PHP classique en transformé par le runtime du langage en bytecode avant exécution. GraalPHP est lui un compilateur JIT qui traduit les fragments de code traités en code machine.

Un sous ensemble important de PHP 7.4 est ainsi implémenté. Si PHP 7.4 est considéré comme un langage rapide, GraalPHP apporte des améliorations de plus de 800% en moyenne à l'exécution selon les benchmarks réalisés par son auteur.

Andrin Bertschi décrit son travail réalisé pour GraalPHP dans un très intéressant document de plus de 100 pages, accessible ici.

Si GraalPHP n'est pour l'instant 'qu'un' travail de thèse, il mérite très certainement qe l'on s'y intéresse.

GraalPHP est un logiciel libre sous licence Apache 2.0, disponible sur GitHub.