On Thu, May 28, 2015 at 5:35 PM, Dmitry Stogov <dmi...@zend.com> wrote:
> GCC may split some functions into "hot" and "cold" paths and then put basic > blocks into different segments. > Then all "hot" blocks are collected together and placed in the order > corresponding to call chains. > As result during execution of "hot" paths we got less i-cache and iTLB > misses, however switching to the "cold" path is almost always more > expensive. To have more hot regions while using more apps make sense and is actually the goal. > The more we train PHP, the more functions are considered as hot and the less > improvement we actually get :) > But all this related to GCC 4.6-4.9. > > GCC-5.1 provides new interesting FDO features. I would rather begin to use more modern apps to actually see improvements with codes than do more work than random config checks and file exists all over the place. While WP will keep benefit from PGO anyway. >> What are you using and what kind of degradation do you see? Or improvement >> s > > > For now I use just Wordpress home page and it give me 8% improvement on > Wordpress and 0-8% on other real apps, and some slowdown on bench.php. In > case I trained PHP with Wordpress and bench.php I got slowdown on both. We have seen less improvements in bench.php but not both being slow down is surprising. Maybe focus only on gcc 5.x as it seems 4.x is not really doing a good job. I did not try yet tho' but icc or VC works pretty well so far. Like to share the apps to test? We do not need dozen of them but the ones we know to benefits most users while optimizing other apps as well while being at it. -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php