Quick Test: PHP 5.6 Against Facebook's HHVM
While PHP 5.6 was just released, Facebook's HHVM remains a competitive, alternative implementation that continues gaining new features and is being ruthlessly optimized by Facebook engineers.
After the PHP 5.6.0 release yesterday I ran some tests of PHP 5.6.0, PHP 5.5.16, and PHP 5.4.32. In that test -- which was using a built-in test of the PHP-based Phoronix Test Suite -- I found the speed of code execution for these common hot paths hadn't changed much from PHP 5.5 to PHP 5.6.
This morning I decided to fire up the latest HHVM (HipHop Virtual Machine) code (v5.6.99-hhvm) to see how its performance compares to PHP 5.6.0 with the Phoronix Test Suite code-paths. The phoronix-test-suite debug-self-test output on PHP 5.6 from yesterday was:
### OVERALL DATA ### PHP: 5.6.0 DETAILED_SYSTEM_INFO: 0.065 seconds LIST_AVAILABLE_TESTS: 0.342 seconds LIST_AVAILABLE_SUITES: 16.346 seconds INFO: 0.016 seconds CLONE_OPENBENCHMARKING_RESULT: 61.829 seconds RESULT_FILE_TO_TEXT: 8.552 seconds DIAGNOSTICS: 0.012 seconds DUMP_POSSIBLE_OPTIONS: 0.010 seconds ELAPSED TIME: 261.519 seconds PEAK MEMORY USAGE: 38.25 MB PEAK MEMORY USAGE (emalloc): 33.915 MB
When running the latest HHVM on the same system with Ubuntu 14.04 LTS:
### OVERALL DATA ### PHP: 5.6.99-hhvm DETAILED_SYSTEM_INFO: 0.221 seconds LIST_AVAILABLE_TESTS: 0.314 seconds LIST_AVAILABLE_SUITES: 14.427 seconds INFO: 0.044 seconds CLONE_OPENBENCHMARKING_RESULT: 64.520 seconds RESULT_FILE_TO_TEXT: 9.320 seconds DIAGNOSTICS: 0.048 seconds DUMP_POSSIBLE_OPTIONS: 0.026 seconds ELAPSED TIME: 266.769 seconds PEAK MEMORY USAGE: 556.339 MB PEAK MEMORY USAGE (emalloc): 78 MB
HHVM is now coming in just behind PHP 5.6 for this particular test. The peak memory usage is also shocking for HHVM but I don't know if their implementation of memory_get_peak_usage() is just radically different from PHP, etc.
Those wanting to learn more about Facebook's HHVM PHP implementation can visit HHVM.com.
Latest Linux Hardware Reviews
Latest Linux Articles
Latest Linux News
Latest Forum Discussions