Facebook have announced that a JIT compiler for PHP called HipHop Virtual machine (hhvm) is now at a fairly advanced stage of development, and that they expect its performance to eventually exceed that of the compiled binaries produced with hphpc:
https://www.facebook.com/notes/facebook-engineering/the-hiphop-virtual-machine/10150415177928920
We had planned on compiling MediaWiki with hphp, with project completion and deployment to Wikimedia around April 2012, at least for parsing. But the idea of a slow compile/test cycle (a few processor-hours) was daunting. Slow compilation is a problem in practice for Facebook, and one of the main reasons for this new hhvm project.
So we've decided to defer our HipHop deployment until hhvm is at a suitable level of maturity. We don't know exactly when that will be, but Jason Evans says in the note linked above that "the first 90% is done; now we're on to the second 90% as we make it really shine."
We still want to do something about parser performance in the first half of 2012, so we're going to bring forward our other performance project, i.e. server-side scripting embedded in wikitext. That's a project which is still at an early stage of planning. We will need to define its scope, and to bite the bullet and make some tough design choices (such as Lua versus JavaScript), if it's going to progress from pipe dream to reality.
An extension specific to citations (like TemplateAdventures) would be an alternative if scripting proves to be too hard.
Deferring HipHop will affect our project priorities in other ways:
* We kicked around the idea of splitting out parsing into a separate cluster of servers, accessible via an HTTP API. The main motivation for doing that is gone now (it would have allowed us to use HipHop for parsing and Zend for everything else).
* We shelved a project plan for better source file distribution (a scap replacement), on the basis that it would be obsolete with HipHop. And our system for having different versions of MediaWiki on different wikis (HetDeploy) was implemented in a quick and dirty way, for the same reason. These two projects may have to be revisited.
-- Tim Starling