Zend 宣布 Zend JIT 开源,源码地址: https://github.com/zendtech/php-src/tree/zend-jit/ext/opcache/jit 该分支包含 PHP JIT 的 PoC 概念实现,JIT 是 OPCache 的部分实现,不要求对 PHP 引擎进行任何修改,设计时 100% 兼容。JIT 使用 LLVM 后端,在 x86 和 x86_64 平台下测试通过。目前该项目还在体验阶段。 构建PHP 可通过如下参数进行配置和构建。LLVM 代码不稳定,因此版本间可能会有一些不兼容的问题。建议使用 LLVM 3.5 来避免兼容性问题。
配置为了启用 JIT 需要在 opcache ini 指令增加新行:
性能JIT 提供超过 5 倍的性能提升,一些如 Mandelbrot 的性能提升 30 倍
不幸的是 JIT 并没有提升真实应用的性能,同时 LLVM 编译时间也不适合运行时代码生成的。 |