[Python-Dev] Profile Guided Optimization active by-default

Gregory P. Smith greg at krypto.org
Tue Aug 25 18:48:23 CEST 2015


On Mon, Aug 24, 2015, 11:19 PM Nick Coghlan <ncoghlan at gmail.com> wrote:

On 25 August 2015 at 05:52, Gregory P. Smith <greg at krypto.org> wrote:
> What we tested and decided to use on our own builds after benchmarking at
> work was to build with:
>
> make profile-opt PROFILE_TASK="-m test.regrtest -w -uall,-audio -x
test_gdb
> test_multiprocessing"
>
> In general if a test is unreliable or takes an extremely long time,
exclude
> it for your sanity.  (i'd also kick out test_subprocess on 2.7; we
replaced
> subprocess with subprocess32 in our build so that wasn't an issue)

Having the "production ready" make target be "make profile-opt"
doesn't strike me as the most intuitive thing in the world.

I agree we want the "./configure && make" sequence to be oriented
towards local development builds rather than highly optimised
production ones, so perhaps we could provide a "make production"
target that enables PGO with an appropriate training set from
regrtest, and also complains if "--with-pydebug" is configured?


Regards,
Nick.

--
Nick Coghlan   |   ncoghlan@ <ncoghlan at gmail.com>gmail.com
<ncoghlan at gmail.com>   |   Brisbane, Australia


Agreed. Also, printing a message out at the end of a default make all build
suggesting people use make production for additional performance instead
might help advertise it.

make install could possibly depend on make production as well?
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-dev/attachments/20150825/e28f9f2e/attachment.html>


More information about the Python-Dev mailing list