I just came across this article. Any thoughts? PGO: Let It Go (PHP) | Intel® Software
Nice will have to see if this can be applied to Centmin Mod source compiles this part would be hard to do when no sites are setup yet though ! but make for php recompiles more info PHP 7 Performance Improvements May Increase if You Optimize it to Your Application using to PGO - PHP Classes
Yes, I think simple it would be a 3 step process. 1) Compile PHP with instrumentation. 2) Centminmod server admin will access the websites pages and use common functions of the site to build profile. 3) Recompile php using the generated profile I also think if we have many wordpress sites it would be good to automate the entire process. 1) Install a test domain with basic wordpress 2) Compile PHP with instrumentation. 3) use curl to access front and backend pages of test domain 4) Recompile php using the generated profile 5) delete demo domain and DB
might be easier if i can find out if make prof-gen survives subsequent php recompiles (i.e. make clean) as i could make it so initial first time php install compile uses make prof-gen, then let users run that php version for their sites and next time they recompile (not upgrade) the same php version via centmin.sh menu option 5, use make prof-use so it would be optimised for all sorts of already php requests/processing done. Will see
hmm doesn't seem to work for make prof-gen on PHP 5.6.26 so maybe PHP 7 only ? Code (Text): make prof-gen make: *** No rule to make target `prof-gen'. Stop.
In the official PHP repo there is some reference to an earlier build with it.. not sure yet... web-rmtools/php-5.5-pgo-ts.ini at master · php/web-rmtools · GitHub
will test on PHP 7 and see found something useful GitHub - 01org/php_pgo_training_scripts Code (Text): * Authors: * Gabriel Samoila <gabriel.c.samoila@intel.com> * Bogdan Andone <bogdan.andone@intel.com> seems to suggest PHP 7 only !
@ethanpil ta-da ! Added Profile Guided Optimizations To Boost PHP 7 Performance | Centmin Mod Community
I don't see in your guide how to differentiate between first and second compile. Also how can we recompile after significant changes to PHP codebase?
It's all done in the same centmin.sh menu option 5 php recompile run for 1st and 2nd compilations using Intel provided training profiles for wordpress, drupal and mediawiki like PHP execution patterns GitHub - 01org/php_pgo_training_scripts
I guess I could add options for users define additional php script paths to call against too. Or do it automatically just for the web root of each nginx vhost i.e. /home/nginx/domains/domain.com/public/index.php if index.php exists
FYI, if you look at the notes for the training profiles, they said its not as good as actual real world training.
Hmmm. Seems from reading though it's better to use Intel provided PGO training scripts if you have more than one PHP web application on server that directing php to train against just Wordpress If you only had Wordpress and no other PHP scripts, then training aginst real Wordpress path would be optimal.
Should be an option to self train or not. For example, my servers 90% wordpress. Would prefer to squeeze an extra 3-4%!
@ethanpil more performance if you have the right cpus Beta Branch - PHP Compiler optimization for Intel Specific Processors in 123.09beta01 | Centmin Mod Community
@ethanpil added support to define your own path to your PHP web app's index.php page for PGO training Beta Branch - update inc/php_upgrade.inc add PHPPGO_INDEXPATH variable support in 1… | Centmin Mod Community