HipHop for PHP
| Developer(s) | |
|---|---|
| Initial release | February 2, 2010 |
| Written in | C++, C |
| Operating system | Cross-platform |
| Type | Source code transformer |
| License | Free software (PHP License) |
| Website | http://wiki.github.com/facebook/hiphop-php/ |
HipHop for PHP is a source code transformer for PHP script code. HipHop programmatically transforms PHP source code into highly optimized C++ and then uses g++ to compile it to machine code. HipHop includes a code transformer, a reimplementation of PHP's runtime system, and a rewrite of many common PHP Extensions to take advantage of these performance optimizations.[1]
HipHop for PHP can substantially increase the speed of PHP applications. Improvements of web page generation throughput by factors of 2 to 6 have been observed.[2][3]
HipHop was created by Facebook to save resources on its servers. It is being distributed with its over 300,000 lines of source code written in C++ and C as free software under the terms of version 3.01 of the PHP License.
Facebook has also developed HPHPi, which is an experimental interpreter designed for development with no need to compile the PHP source code before running it.
Contents |
[edit] History
Initially, HipHop was developed at Facebook under the lead of Haiping Zhao on CentOS and Fedora systems. It had been under development for two years already when the release as free software under the PHP License was announced for 2 February 2010. Due to technical difficulties, Facebook slipped the release date by 18 days,[4][5] releasing on 20 February to the public Git repository.
[edit] Using HipHop for PHP
HipHop for PHP is an open source project, available from GitHub under the open source PHP license.
HipHop currently supports PHP version 5.2 and will be updated to support 5.3.
HipHop has been developed on CentOS and Fedora; building on other operating systems may not work at present, although support may be added in the future. At present, HipHop can only run on 64-bit architectures.
HipHop is a considerable improvement for running PHP projects with a reduced memory footprint[6] and adding TBB's parallel_for to HipHop gives an even more considerable speed-up and a significant decrease in memory consumption.[7]
[edit] See also
[edit] References
- ^ "HipHop for PHP: Move Fast". Developers.facebook.com. http://developers.facebook.com/news.php?blog=1&story=358. Retrieved 2011-04-12.
- ^ "HipHop for PHP: Benchmark". http://php.webtutor.pl/en/2011/04/02/hiphop-for-php-bechmark-english-version/. Retrieved 2011-05-01.
- ^ "Drupal 7: HipHop for PHP vs APC – benchmark". http://php.webtutor.pl/en/2011/05/17/drupal-hiphop-for-php-vs-apc-benchmark/. Retrieved 2011-05-18.
- ^ PHP Creator Asks, Is Facebook's HipHop Just a 'Nifty Trick'?
- ^ Repository documentation on February 8, 2010.
- ^ "WordPress on HipHop – White Paper « Open Parallel". Openparallel.wordpress.com. 2010-11-01. http://openparallel.wordpress.com/2010/11/01/wordpress-on-hiphop-white-paper/. Retrieved 2011-04-12.
- ^ "TBB in WordPress – White Paper « Open Parallel". Openparallel.wordpress.com. 2010-11-01. http://openparallel.wordpress.com/2010/11/01/tbb-in-wordpress-%E2%80%93-white-paper/. Retrieved 2011-04-12.
[edit] External links
- Official website
- HipHop for PHP at SourceForge.net
- HipHop Compiler for PHP? Transforming PHP into C++ — lecture given by HipHop Lead Engineer, Haiping Zhao at Stanford University (video archive).
- List of unimplemented functions and features in HipHop for PHP
- "Integration of Intel's TBB into Facebook's HipHop" – Presentation by Lenz Gschwendtner and Nicolás Erdödy at LCA2011 in Brisbane, Australia. Video (28 Jan 2011)
- Firm that uses HipHop to convert websites to C++ from PHP for their clients.
|
|||||||||||||||||||||||||||||
|
|||||||||||||||||||||||||||||||||||||||||
| This software article is a stub. You can help Wikipedia by expanding it. |