Author |
|
Jan-E
Joined: 09 Mar 2012 Posts: 1266 Location: Amsterdam, NL, EU
|
|
Back to top |
|
gijs
Joined: 27 Apr 2012 Posts: 189 Location: The Netherlands
|
Posted: Thu 09 May '13 13:07 Post subject: |
|
|
Are there any performance benefits by using the X64 version? |
|
Back to top |
|
Jan-E
Joined: 09 Mar 2012 Posts: 1266 Location: Amsterdam, NL, EU
|
Posted: Thu 09 May '13 13:29 Post subject: |
|
|
The PHP developers once said: no. But for PHP 5.5, they are now supporting x64 as well (under VC11). Maybe in the long run there will be better memory management in PHP 5.5 |
|
Back to top |
|
gijs
Joined: 27 Apr 2012 Posts: 189 Location: The Netherlands
|
Posted: Thu 09 May '13 13:39 Post subject: |
|
|
Thanks, I'll run x86 then
btw, I've enabled the zendoptimizerplus but all my Joomla pages are rendered white when its enabled...
My SMF forum says there is an (apache) server error...
Any tips to fix that?
This is my zendoptimizer config, once changing the zend_optimizerplus.enable=0 to 1 those errors start to happen...
Code: | [PHP_zendoptimizer]
zend_extension = "C:\Program Files (x86)\PHP\ext\php_ZendOptimizerPlus.dll"
zend_optimizerplus.enable=0
zend_optimizerplus.use_cwd=1
zend_optimizerplus.validate_timestamp=0 ; file stat
zend_optimizerplus.revalidate_freq=2 ; seconds
zend_optimizerplus.revalidate_path=0
zend_optimizerplus.dups_fix=0
zend_optimizerplus.log_verbosity_level=1
zend_optimizerplus.memory_consumption=128
zend_optimizerplus.interned_strings_buffer=16 ; default 4 - undocumented?
zend_optimizerplus.max_accelerated_files=2000
zend_optimizerplus.max_wasted_percentage=25 ; percent waste until restart
zend_optimizerplus.consistency_checks=0
zend_optimizerplus.force_restart_timeout=60
zend_optimizerplus.blacklist_filename=
zend_optimizerplus.fast_shutdown=1
zend_optimizerplus.optimization_level=0xfffffbbf
zend_optimizerplus.enable_slow_optimizations=1 |
|
|
Back to top |
|
Smitty
Joined: 03 Jan 2008 Posts: 197
|
Posted: Thu 09 May '13 14:45 Post subject: |
|
|
Jan-E, I have the new version on my development system and everything is looking great. Thank you for providing the builds.
gijs:
ZendOptimizerPlus has been renamed. Try:
Code: | zend_extension = ext/php_opcache.dll
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1
opcache.enable_cli=1 |
|
|
Back to top |
|
gijs
Joined: 27 Apr 2012 Posts: 189 Location: The Netherlands
|
Posted: Thu 09 May '13 22:05 Post subject: |
|
|
Thanks.
I've ran some tests.
Code: | [PHP_zendoptimizer]
zend_extension = "C:\Program Files (x86)\PHP\ext\php_opcache.dll"
opcache.enable=1
opcache.use_cwd=0
opcache.validate_timestamps=0 ; file stat
opcache.revalidate_freq=2 ; seconds
opcache.revalidate_path=0
opcache.save_comments=0
opcache.load_comments=0
opcache.dups_fix=0
opcache.inherited_hack=0
opcache.log_verbosity_level=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.enable_file_override=1
opcache.max_wasted_percentage=5 ; percent waste until restart
opcache.consistency_checks=0
opcache.force_restart_timeout=180
opcache.blacklist_filename=paypal.php
opcache.fast_shutdown=1
opcache.optimization_level=0xffffffff
opcache.enable_slow_optimizations=1
opcache.max_file_size=0 |
Works fine but no noticeable difference from using php wincache, so I guess ill stick with wincache for now. |
|
Back to top |
|
Smitty
Joined: 03 Jan 2008 Posts: 197
|
Posted: Thu 09 May '13 22:14 Post subject: |
|
|
I would recommend switching to Opcache instead of Wincache. Wincache is barely supported by Microsoft. It takes months of people complaining to even get them to respond to bugs in Wincache. Opcache will be officially supported by PHP from 5.5 onward. |
|
Back to top |
|
gijs
Joined: 27 Apr 2012 Posts: 189 Location: The Netherlands
|
Posted: Thu 09 May '13 23:00 Post subject: |
|
|
Fair enough, wincache doesn't seem to get updated as much as Opcache does.
Also the Opcache is slightly faster in combination with Joomla.
But we are talking about 100~ microseconds here so it's not noticeable...
Just 2 more questions.
One: Why does Opcache not show in Joomla while Wincache does?
and the 2nd question is can I use Opcache as my session.save.handler?
I currently have wincache to do this:
session.save_handler = wincache |
|
Back to top |
|
Jan-E
Joined: 09 Mar 2012 Posts: 1266 Location: Amsterdam, NL, EU
|
Posted: Fri 10 May '13 1:57 Post subject: |
|
|
@Smitty: it is the intention of the developers to keep the PECL version of php_opcache (for 5.3 & 5.4) the same as the one in 5.5, as long as possible.
@gijs: php_opcache has no user cache. That is probably the answer to your 2 questions. For a user cache you'll need php_apcu.dll (the usercache part of php_apc.dll). |
|
Back to top |
|
gijs
Joined: 27 Apr 2012 Posts: 189 Location: The Netherlands
|
Posted: Fri 10 May '13 13:07 Post subject: |
|
|
I enabled it like this:
Code: | [PHP_APCU]
extension = php_apcu.dll
|
But it actually resulted in a slow down... |
|
Back to top |
|
gijs
Joined: 27 Apr 2012 Posts: 189 Location: The Netherlands
|
Posted: Sun 12 May '13 1:03 Post subject: |
|
|
How can I turn the Opcache off for a certain virtualhost?
One of my websites running opencart doesn't like it.
When I try to turn it off in the htaccess file with: php_flag opcache.enable=0
I get a internal server error... |
|
Back to top |
|
wm003
Joined: 24 Mar 2006 Posts: 88
|
Posted: Mon 13 May '13 17:58 Post subject: opcache instable under x64 |
|
|
Even when i use the default settings every opcode cache fails sometimes when using the x64 compiled binaries. The x86 binaries always seem to work (at least eaccelerator and opcache. Wincache has other issues for me for random unknown reasons (even for x86)...but thats all mentioned in another thread)
So, its the same case for the x64 Version of opcache.
No Opcode cacher runs well on my x64 environments.
Especially when i had fopen function in use the x64 Version of opcache does not seem to like it. (resulting in "Premature end of script headers" and a 500 internal server error. The same script with x86-opcache works well. Strange. When i disable opcache at x64 PHP runs fine without any issues (but also without any opcode cacher...) |
|
Back to top |
|
gijs
Joined: 27 Apr 2012 Posts: 189 Location: The Netherlands
|
Posted: Mon 13 May '13 23:07 Post subject: |
|
|
I'm already running x86 so I really need to turn it off for this virtualhost/do it in the .htaccess file.
I also noticed normal php value's don't work in the .htaccess file which is odd...
They all result in a server config error. |
|
Back to top |
|
wm003
Joined: 24 Mar 2006 Posts: 88
|
Posted: Tue 14 May '13 7:28 Post subject: |
|
|
gijs wrote: | I'm already running x86 so I really need to turn it off for this virtualhost/do it in the .htaccess file.
I also noticed normal php value's don't work in the .htaccess file which is odd...
They all result in a server config error. |
if you are using the ts-version and running php as apache module you may try http://davidwalsh.name/php-values-htaccess |
|
Back to top |
|
wm003
Joined: 24 Mar 2006 Posts: 88
|
Posted: Tue 14 May '13 9:10 Post subject: |
|
|
gijs wrote: | How can I turn the Opcache off for a certain virtualhost?
One of my websites running opencart doesn't like it.
When I try to turn it off in the htaccess file with: php_flag opcache.enable=0
I get a internal server error... |
i would try a different php.ini on your virtualhosts
Code: | <VirtualHost myotherdomain.com:80>
PHPIniDir '/path/to/php/conf/php-foo.ini'
</VirtualHost>
|
where opcache is disabled (or the extension not even loaded)
---
Or use ini_set instead of .htaccess file
Code: | ini_set('opcache.enable', '1'); |
But as this would be executed in the already encoded file it may also lead into a 500 Error...havent tried it myself |
|
Back to top |
|
gijs
Joined: 27 Apr 2012 Posts: 189 Location: The Netherlands
|
Posted: Tue 14 May '13 11:17 Post subject: |
|
|
I'm making use of FCGI and the non thread safe version.
I tried the: PHPIniDir 'C:\Program Files (x86)\PHP\php2.ini' in the virtualhost.
But apache wouldn't start... |
|
Back to top |
|
wm003
Joined: 24 Mar 2006 Posts: 88
|
Posted: Tue 14 May '13 13:05 Post subject: |
|
|
gijs wrote: | I'm making use of FCGI and the non thread safe version.
I tried the: PHPIniDir 'C:\Program Files (x86)\PHP\php2.ini' in the virtualhost.
But apache wouldn't start... |
OK, so what about trying this instead in your vhost entry
Code: | FCGIWrapper "/path/to/phpexe/php-cgi -c c:\my\other\phpini\location" |
|
|
Back to top |
|
gijs
Joined: 27 Apr 2012 Posts: 189 Location: The Netherlands
|
Posted: Tue 14 May '13 16:39 Post subject: |
|
|
wm003 wrote: | gijs wrote: | I'm making use of FCGI and the non thread safe version.
I tried the: PHPIniDir 'C:\Program Files (x86)\PHP\php2.ini' in the virtualhost.
But apache wouldn't start... |
OK, so what about trying this instead in your vhost entry
Code: | FCGIWrapper "/path/to/phpexe/php-cgi -c c:\my\other\phpini\location" |
|
I tried this:
Code: | FCGIWrapper ""C:/Progra~2/php/php-cgi.exe" .php -c "C:/Progra~2/php/php2.ini" |
Code: | FCGIWrapper ""C:/Progra~2/php/php-cgi -c "C:/Progra~2/php/php2.ini" |
But they don't work either.
Update:
Fixed it with this:
Code: | FcgidWrapper "C:/Progra~2/php/php-cgi.exe .php -c C:/Progra~2/php/php2.ini" |
Apparently FCGIWrapper is deprecated. |
|
Back to top |
|
James Blond Moderator
Joined: 19 Jan 2006 Posts: 7371 Location: Germany, Next to Hamburg
|
|
Back to top |
|
santa.klaus
Joined: 11 Feb 2013 Posts: 5
|
Posted: Thu 16 May '13 16:25 Post subject: |
|
|
The php_imagick.dll isn't working with the php x86 nts build. Is this the build's error or the library's?
I'm using the latest Imagemagick. |
|
Back to top |
|