Re: Re: com php-src: Add targets to simplify building PHP with FDO (Feedback Directed Optimisation) PHP should be built with the folowing steps::
Makefile.global configure.in
| From: | Pierre Joye | Date: | Thu, 28 May 2015 02:46:12 +0000 |
| Subject: | Re: Re: com php-src: Add targets to simplify building PHP with FDO (Feedback Directed Optimisation) PHP should be built with the folowing steps:: Makefile.global configure.in |
||
| References: | 1 2 3 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-86416@lists.php.net to get a copy of this message | ||
On May 26, 2015 11:43 PM, "Dmitry Stogov" <dmitry@zend.com> wrote:
>
> On Tue, May 26, 2015 at 6:24 PM, Rasmus Lerdorf <rasmus@lerdorf.com>
wrote:
>
> > On 05/26/2015 07:33 AM, Dmitry Stogov wrote:
> > > Commit: 7dac4d449f72d7eb029aa1a8ee87aaf38e17e1c5
> > > Author: Dmitry Stogov <dmitry@zend.com> Tue, 26 May 2015
> > 17:33:25 +0300
> > > Parents: ca31711625095c2d6e308d7f0fc9d371ad0934d4
> > > Branches: master
> > >
> > > Link:
> >
http://git.php.net/?p=php-src.git;a=commitdiff;h=7dac4d449f72d7eb029aa1a8ee87aaf38e17e1c5
> > >
> > > Log:
> > > Add targets to simplify building PHP with FDO (Feedback Directed
> > Optimisation)
> > > PHP should be built with the folowing steps:
> > >
> > > make clean
> > > make -j4 prof-gen
> > > ; now php should be trained with some scripts
> > > ; for example `sapi/cgi/php -T 1000 /var/www/http/wordpress/index.php
>
> > /dev/null`
> > > make prof-clean
> > > make -j4 prof-use
> > >
> > > The "properly" trained build may give up to 10% real performance
boost!
> > > "Improprly" trained PHP might be even slower.
> >
> > Whoa, really 10%? I know there is AutoFDO coming in gcc 5.1 and I didn't
> > think this was really practical until then. Perhaps it is. I wonder if
> > this will spur php-wordpress, php-drupal and php-mediawiki tuned builds?
> >
>
> I hope, we will be able to identify the main sources of speed difference
> and provide a source level solution that won't require FDO.
> I'm going to work on this with a team of experts from Intel, but we don't
> have any receipt yet.
> In case anyone find something useful please share with me.
>
> At this point we know that FDO built inlines most memcpy() and memset()
> calls.
>
> Training scripts may speed-up some apps and slow-down others, but it looks
> like most real-life apps benefits from the the same things, while
synthetic
> benchmarks from something opposite. So improving real-life apps we
> slow-down bench.php and back :)
It should be possible to use what we use for the windows pgo profiling
build. All php code anyway:
https://github.com/OSTC/pgo-scripts/blob/master/README
Let me know if you like to share the same base, it could save some work.