Skip to content
Michael Meyer edited this page Sep 18, 2013 · 80 revisions

HHVM is a new open-source virtual machine designed for executing programs written in PHP. HHVM uses a just-in-time compilation approach to achieve superior performance while maintaining the flexibility that PHP developers are accustomed to. HHVM has realized > 6x increase in web request throughput for Facebook compared with Zend PHP 5.2.

For general discussion and the latest news about HHVM, check out hhvm.com and our Facebook page.

If you would like to report a bug or are having difficulty using HHVM, find us in the #hhvm chat room on freenode or open a github issue here. We are also happy to review and take code contributions here.

Why HHVM

One of the explicit design goals of HHVM was the ability to continue writing complex logic directly within PHP. Companies with large PHP codebases will generally rewrite their complex functionality directly as PHP extensions in either C or C++. Doing so ends up reducing the number of people who are able to work on the company’s entire codebase. By keeping this logic in PHP, Facebook is able to move fast and maintain a high number of engineers who are able to work across the entire codebase.

Installing pre-built packages for HHVM

Prebuilt packages for some distributions are available as shown below:

Building HHVM

HHVM is currently under heavy development and at present we only actively test on the Ubuntu distribution. Building procedures should be fairly similar on other linux distros.

Here are some guides for how to get HHVM up and running on your distro:

Mac OS X and FreeBSD are not officially supported or tested but for those who want to experiment or help out:

The wiki content is licensed under Creative Commons Attribution-ShareAlike License

Clone this wiki locally