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

Patrascu, Alecsandru alecsandru.patrascu at intel.com
Sat Aug 22 20:02:17 CEST 2015

Thank you Stefan for also pointing out the importance of regrtest as a good training set for building Python. Indeed, Ubuntu delivers in their repos the Python2/3 binaries already optimized using PGO based on regrtest.


-----Original Message-----
From: Python-Dev [mailto:python-dev-bounces+alecsandru.patrascu=intel.com at python.org] On Behalf Of Stefan Behnel
Sent: Saturday, August 22, 2015 8:25 PM
To: python-dev at python.org
Subject: Re: [Python-Dev] Profile Guided Optimization active by-default

Guido van Rossum schrieb am 22.08.2015 um 18:55:
> Regarding the training set, I agree that regrtest sounds to be better 
> than pybench. If we make this an opt-in change, we can experiment with 
> different training sets easily. (Also, I haven't seen the patch yet, 
> but I presume it's easy to use a different training set?

It's just one command in one line, yes.

> Experimentation should be encouraged.)

A well chosen training set can have a notable impact on PGO compiled code in general, and switching from pybench to regrtests should make such a difference. However, since CPython's overall performance is mostly determined by the interpreter loop, general object operations (getattr!) and the basic builtin types, of which the regression test suite makes plenty of use, it is rather unlikely that other training sets would provide substantially better performance for Python code execution.

Note also that Ubuntu has shipped PGO builds based on the regrtests for years, and they seemed to be quite happy with it.


Python-Dev mailing list
Python-Dev at python.org
Unsubscribe: https://mail.python.org/mailman/options/python-dev/alecsandru.patrascu%40intel.com

More information about the Python-Dev mailing list