HipHop Virtual Machine 2.1 Is Even Faster

Written by Michael Larabel in Free Software on 20 July 2013 at 10:45 AM EDT. 5 Comments
FREE SOFTWARE
Facebook's HipHop VM (HHVM) did a new release last week and now it's even faster! HHVM 2.1 also supports more language functionality.

HHVM is Facebook's PHP implementation in its latest form. HHVM is designed for making PHP extremely fast. In our tests at Phoronix, HHVM has worked out incredibly well and supports most functionality of the upstream PHP5 interpreter.

Released last week was HipHop VM 2.1. HHVM 2.1 brings support for new PHP language features and a lot more performance improvements. Namespaces and Redis support were among the additions. The new release is available in source form and via Ubuntu 12.04 packages, as announced from their Facebook page.

Though in terms of HHVM 2.1 release notes for fully identifying all of the changes in this release, one of the developers wrote on their Facebook page, "Sorry, no. We've been so busy fixing bugs, closing the parity gap, and speeding everything up, that nobody really kept high-level notes. Namespaces are a big-ticket item. Redis support has been added. The testing infrastructure has undergone a complete overhaul. And lots of little updates here and there."

The Facebook HHVM source code can be found via their GitHub project page along with more details on the exciting project.

To look for any performance changes in HHVM 2.1 over HHVM 2.0.1, I ran the phoronix-test-suite debug-self-test option that has some common PHP routines on the latest Sokndal Git code. Testing was from my Ubuntu 12.04 LTS VMware guest on my Apple Retina MacBook Pro development system.

HHVM 2.0.1 - PHP: 5.3.3.hiphop
DETAILED_SYSTEM_INFO: 0.364 seconds
LIST_AVAILABLE_TESTS: 0.538 seconds
LIST_AVAILABLE_SUITES: 93.583 seconds
INFO: 0.487 seconds
CLONE_OPENBENCHMARKING_RESULT: 49.215 seconds
RESULT_FILE_TO_TEXT: 7.309 seconds
DIAGNOSTICS: 0.192 seconds
DUMP_POSSIBLE_OPTIONS: 0.207 seconds

ELAPSED TIME: 455.687 seconds
PEAK MEMORY USAGE: 3.406 MB
PEAK MEMORY USAGE (emalloc): 18 MB

HHVM 2.1.0 - PHP: 5.4.999-hiphop
DETAILED_SYSTEM_INFO: 0.176 seconds
LIST_AVAILABLE_TESTS: 0.382 seconds
LIST_AVAILABLE_SUITES: 50.998 seconds
INFO: 0.024 seconds
CLONE_OPENBENCHMARKING_RESULT: 55.040 seconds
RESULT_FILE_TO_TEXT: 0.008 seconds
DIAGNOSTICS: 0.020 seconds
DUMP_POSSIBLE_OPTIONS: 0.008 seconds

ELAPSED TIME: 319.968 seconds
PEAK MEMORY USAGE: 10.334 MB
PEAK MEMORY USAGE (emalloc): 18 MB


As one can see, the overall execution time with the new HHVM 2.1 release is at 70% the time it took on HHVM 2.0.1, which was already much faster than upstream PHP 5.3/5.4/5.5!
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week