BT

InfoQ Homepage News Improve PHP Performance with Phalanger for .NET and Mono

Improve PHP Performance with Phalanger for .NET and Mono

Bookmarks

Phalanger is a PHP compiler for the .NET and Mono runtime. It is currently capable of running popular PHP based applications such as WordPress. With the exception of indirect invocation of static methods, Phalanger now offers across the board performance improvements over PHP 5.3.1.

As you can see in the below chart, there are been significant between June’s build and yesterday’s release. Much of these improvements are directly attributable to the incorporation of the Dynamic Language Runtime (DLR).

Miloslav Beňo writes,

Before DLR, we were classifying operations into two cases (not counting eval), bound during compilation and bound during run time. The goal for Phalanger as dynamic language compiler is to compile as much as possible as compile-time bound operations and use runtime-bound operations only for cases that can’t be determined during compilation. DLR caching system allows compiling operation at run time when we know particular types for the operation and store compiled operation into cache. This can work efficiently because of the idea that when particular operation occurs, there is a big chance that the next time operands will have the same type.

Phalanger 2.1 is available on CodePlex under the Apache open source license. For a walkthrough that shows how to set it up see Miloslav’s article titled WordPress on .NET 4.0.

Rate this Article

Adoption
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

BT

Is your profile up-to-date? Please take a moment to review and update.

Note: If updating/changing your email, a validation request will be sent

Company name:
Company role:
Company size:
Country/Zone:
State/Province/Region:
You will be sent an email to validate the new email address. This pop-up will close itself in a few moments.