Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

Why is PHP 5.3 on Windows faster than previous PHP versions?

DZone's Guide to

Why is PHP 5.3 on Windows faster than previous PHP versions?

· Web Dev Zone ·
Free Resource

Deploying code to production can be filled with uncertainty. Reduce the risks, and deploy earlier and more often. Download this free guide to learn more. Brought to you in partnership with Rollbar.

Last week I had the good fortune of hearing Rasmus Lerdorf speak at the Seattle PHP Meetup. His talks was excellent – it was sprinkled with history, personal stories, tips, best practices, and insights into what he’s thinking about for the future. At one point, during a section on best practices, he urged everyone to move to PHP 5.3 if they hadn’t already. He added (and I’m paraphrasing here), “If you aren’t running PHP 5.3 on Windows, you’re lucky…because you have a 40% performance boost coming.”

He clarified this by saying that, with some help from Microsoft, improvements were made in PHP 5.3 that led to a 40% performance improvement of PHP on Windows. Because he didn’t go into the details of why this performance boost was realized, I got questions in email the next day asking about why. So, here’s a slide from a presentation I did last year that explains why (I actually borrowed this slide from a presentation that Pierre Joye did...you can see his complete presentation, which has more detail, here:http://www.slideshare.net/pierrej):

image


As you can see from the slide, there are 3 main reasons for the performance improvement:

  1. PHP 5.3 is compiled with the VC9 compiler (also known as the Visual C++ 2008 compiler).
  2. Rather than calling the POSIX abstraction layer in the Windows build of PHP, the Win32 API is called directly.
  3. PHP library management was improved in PHP 5.3.

Clearly, that’s the short answer, but it should give you some idea of why PHP 5.3 is 40% faster on Windows than previous versions of PHP.

Deploying code to production can be filled with uncertainty. Reduce the risks, and deploy earlier and more often. Download this free guide to learn more. Brought to you in partnership with Rollbar.

Topics:

Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}