I’ve just finished tweakin’ out the PGO (Profiled Guided Optimization) build script for PHP on Windows to crank out the thread-safe version of PHP as well.
So, now you can test PHP 5.3 RC3-dev PGO optimized for Windows with Apache 2.2!
What’s the difference between thread-safe and non-thread-safe?
The non-thread-safe version of PHP should be used when there is a single request per instance of PHP–like, when you use FastCGI—a single PHP-CGI.EXE handles a single request at a time, and the Web Server spins off multiple instances of PHP-CGI.EXE to handle requests in parallel. Because each instance is in a separate process, there is no need to have all the thread-safety code in PHP.
The thread-safe version is required when you use PHP as a module—as you would in Apache on Windows—and the WebServer handles multiple requests in the same process.
Given the choice, the non-thread-safe version should be faster, and if you can, you should probably use that one.
You can read more about this at http://www.iis-aid.com/articles/my_word/difference_between_php_thread_safe_and_non_thread_safe_binaries
If you already use the thread-safe version of PHP on Windows, please download and test this version if you can—and send me some feedback!
Links to the latest PHP 5.3 Builds:
PHP 5.3-RC-dev snapshots: