Graalphp:构建在GraalVM上的高效PHP实现

2020-09-25 13:43:31

PHP是一种流行的、弱类型的通用编程语言。这种语言最初是为构建动态网页而设计的,后来在服务器端网站开发中得到了广泛采用。在这项工作中,我们描述了在Truffle和GraalVM上运行的PHP的实验性编译器和运行库graalphp的设计和实现。GraalVM是一个支持多种语言执行的虚拟机,它被实现为基于Truffle的抽象语法树(AST)解释器。GraalVM使用Graal作为其JIT编译器,将频繁执行的代码片段编译成机器代码。我们实现了PHP语言的一个子集,通过计算机语言基准游戏运行合成基准。我们将我们的实现与PHP7以及替代实现(如HHVM、JPHP和PHP8的早期字母版本)的峰值性能进行了比较。实验结果表明,与PHP7相比,我们的运行时性能提升高达859%。这些初步结果表明,托管在Truffle上的PHP实现可能比现有的语言实现要快得多。

#构建依赖:linux环境,maven,ant,graalvm#从https://github.com/graalvm/graalvm-ce-builds/releases$export JAVA_HOME=/PATH/to/graalvm$mvn package$./graalphp<;php-file.php>;下载GraalVM