Phoronix 發(fā)布了針對 PHP 8 的性能基準測試報告。由于 PHP 8 Alpha1 大約要到6月中旬才發(fā)布,所以 Phoronix 從 PHP 8 最新的Git 代碼(截至5月底)構建了用于測試的版本。PHP 8 重要新特性除了新的 JIT 編譯器,還包括新的靜態(tài)返回類型、union types 2.0(聯(lián)合類型)和 attributes(屬性)等。
用于參考對比的版本包括:PHP 7.4.6, 7.3.18, 7.2.31, 7.1.33, 7.0.33, 5.6.39, 5.5.38 和 5.4.44,以及啟用了 JIT (Just In Time) 的 PHP 8。
所有受測試的版本都是在相同系統(tǒng)中使用相同的編譯器和 PHP 配置文件以相同的方式進行構建,測試環(huán)境如下:
測試結果如下:
上圖顯示了使用PHPbench 測試各版本 PHP 的性能結果??梢钥吹剑瑥?PHP 7.4 stable 到 PHP 8 有小幅度改進,大約是7% 的提升,但如果 PHP 8 啟用了 JIT,性能改進可以說是非常明顯,比 PHP 7.4 stable 提升了 92%。至于更舊的版本,PHP 8 with JIT 的性能是 PHP 5.4 的 5 倍。
上圖是各版本PHP 微服務基準測試的結果,通過一些 PHP 自帶的內(nèi)置測試,可以看到 PHP 8.0 的速度比已經(jīng)很快的 PHP 7.4 略有提高,而啟用 JIT 支持后,其速度更是碾壓全場。
上圖的測試結果顯示,在使用Phoronix Test Suite Self Tests 進行測試的過程中,無論是否開啟 JIT,PHP 8 的性能
與 PHP 7 的成績都沒有明顯的改進,主要是遇到了 I/O 瓶頸,所以總體上沒有產(chǎn)生太大的差異。
同樣的,在渲染測試和合并測試方面,啟用 JIT 的 PHP 8 沒有產(chǎn)生明顯的優(yōu)勢,不過與舊版本 PHP 5 相比,PHP 8 的性能有了顯著的提升。
上圖是綜合了各測試結果的評分數(shù)據(jù)對比,就目前的開發(fā)狀態(tài)來看,PHP 8.0 的速度是 PHP 5.4-5.6 的 3 倍左右,啟用 JIT 后,就變成了 4 倍左右的差距。
從數(shù)據(jù)來看,PHP 8.0 是一個相當值得期待的版本,無論是性能方面的提升還是語言特性的增加。
來源:開源中國