Bug 613045

Summary: RFE: Add profile guided optimization to our builds of Python 2
Product: [Fedora] Fedora Reporter: Dave Malcolm <dmalcolm>
Component: python2Assignee: Charalampos Stratakis <cstratak>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: rawhideCC: aravindarulkalai, bkabrda, cstratak, dmalcolm, ivazqueznet, james.antill, jonathansteffan, mhroncok, pviktori, rkuska, samuel-rhbugs, tomspur, torsava
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: python2-2.7.13-8.fc26 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 613046 (view as bug list) Environment:
Last Closed: 2017-05-14 20:19:20 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 613046    

Description Dave Malcolm 2010-07-09 15:26:34 UTC
gcc 4.5 apparently adds "profile guided optimization", which, as I understand it uses information from previous runs of the DSOs to determine the relative frequency with which each branch is taken.

Python has a good benchmarking suite, which simulates real-world workloads.
See http://hg.python.org/benchmarks/
From the README.txt: "This project is intended to be an authoritative source of benchmarks for all 5 Python implementations. The focus is on real-world benchmarks, rather than 6 synthetic benchmarks, using whole applications when possible."

It may be worth integrating this into the build somehow.  It's not clear to me whether we can cache the data, or if we need to actually run the benchmarking suite during the build, then rebuild.

We should also use the benchmarking suite to measure performance, and see what impact pgo actually has.

Comment 1 Dave Malcolm 2012-05-15 23:29:36 UTC
The upstream Makefile has a profile-opt target to handle this, although the workload it runs is just
  PROFILE_TASK=	$(srcdir)/Tools/pybench/pybench.py -n 2 --with-gc --with-syscheck
and pybench.py isn't a very representative workload.

Upstream bug tracker also has this entry:
   http://bugs.python.org/issue5060

Comment 2 Fedora Admin XMLRPC Client 2013-05-10 04:57:47 UTC
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.

Comment 3 Fedora Admin XMLRPC Client 2015-05-12 12:01:32 UTC
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.

Comment 4 Fedora Admin XMLRPC Client 2016-01-29 13:04:30 UTC
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.

Comment 5 Fedora Admin XMLRPC Client 2017-01-10 18:49:07 UTC
This package has changed ownership in the Fedora Package Database.  Reassigning to the new owner of this component.

Comment 6 Fedora Update System 2017-05-10 16:58:13 UTC
python2-2.7.13-8.fc26 has been submitted as an update to Fedora 26. https://bodhi.fedoraproject.org/updates/FEDORA-2017-c9348ce39b

Comment 7 Fedora Update System 2017-05-10 21:12:44 UTC
python-2.7.13-2.fc24 has been submitted as an update to Fedora 24. https://bodhi.fedoraproject.org/updates/FEDORA-2017-05913d5475

Comment 8 Fedora Update System 2017-05-10 21:13:28 UTC
python-2.7.13-2.fc25 has been submitted as an update to Fedora 25. https://bodhi.fedoraproject.org/updates/FEDORA-2017-de7201b17a

Comment 9 Fedora Update System 2017-05-12 13:36:12 UTC
python-2.7.13-2.fc25 has been pushed to the Fedora 25 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-de7201b17a

Comment 10 Fedora Update System 2017-05-12 22:33:42 UTC
python-2.7.13-2.fc24 has been pushed to the Fedora 24 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-05913d5475

Comment 11 Fedora Update System 2017-05-13 01:10:14 UTC
python2-2.7.13-8.fc26 has been pushed to the Fedora 26 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2017-c9348ce39b

Comment 12 Fedora Update System 2017-05-14 20:19:20 UTC
python2-2.7.13-8.fc26 has been pushed to the Fedora 26 stable repository. If problems still persist, please make note of it in this bug report.

Comment 13 Fedora Update System 2017-05-15 04:36:23 UTC
python-2.7.13-2.fc25 has been pushed to the Fedora 25 stable repository. If problems still persist, please make note of it in this bug report.

Comment 14 Fedora Update System 2017-05-18 20:58:58 UTC
python-2.7.13-2.fc24 has been pushed to the Fedora 24 stable repository. If problems still persist, please make note of it in this bug report.

Comment 15 Aravind 2017-08-13 09:53:14 UTC
Python 2.7.13 has been moved to stable in fedora 25.This bug cannot be reproducable in fedora 25