-
Notifications
You must be signed in to change notification settings - Fork 3k
Home
HHVM is an open-source virtual machine designed for executing programs written in Hack and PHP. HHVM uses a just-in-time compilation approach to achieve superior performance while maintaining the flexibility and ease of use that PHP developers are accustomed to (dynamic features like eval(), rapid run-edit-debug cycle, etc).
HHVM is used by Facebook to serve billions of web requests per day. To date, HHVM (and its predecessor HPHPc before it) has realized over a 9x increase in web request throughput and over a 5x reduction in memory consumption for Facebook compared with the Zend PHP 5.2 engine + APC.
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. We are also happy to review and take code contributions.
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.
Prebuilt (64-bit) packages for some distributions are available as shown below (mostly built from this repo):
- Ubuntu 10.04 (lucid) / Ubuntu 12.04 (precise) / Ubuntu 14.04 (saucy)
- Debian 7 (wheezy) / Debian 8 (jessie)
- Fedora 20
- Mint 16 (petra)
- CentOS 6.4 / 6.x (unofficial)
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:
- Ubuntu 12.04 / 13.10 / 14.04
- Mint 15
- Debian 6 / 7 / 8
- Fedora 19
- CentOS 6.3 / 6.x
- Arch
- Gentoo
- Vagrant VM with Ubuntu 12.04
- Amazon Linux 2014.03
- Others
Mac OS X and FreeBSD are not officially supported or tested but for those who want to experiment or help out:
- Building and installing HHVM on FreeBSD from ports (unofficial)
- Building and installing HHVM on OSX 10.8 / 10.9 (unofficial)
The wiki content is licensed under Creative Commons Attribution-ShareAlike License