Al Bailey 45d4657f3d Python optimizations for CentOs
Pros:
 we are seeing a 10% performance boost for all python processes.

Cons:
 The time to build python increases.
 This is because pgo (profile guided optimizations) need the unit tests
for python to be invoked and then the entire package compiled a second
time using the timing information from the unit test profiling data
that is gathered.

This commit sets up the src rpm environment for building python 2.7.5

- Needed to disable the tox unit test check phase since a couple tests
 fail due to build dependencies
- Turn off dtrace and systemtap in the spec file
- Use pgo for build in modules: https://bugs.python.org/issue26307
- Rollup cpython patches and add --enable-optimizations and
  --with-computed-gotos for optimized build

These are the cpython commits pulled in:
   4ff151a72a3331c514924a5e0d33747a91413fbd  (Sept 18, 2015 pgo)
   c543a0fc3b2052c35fced09e1f96613625723508 (Jun 2 2016) (lto)
   6d8fdfc84b8617476f3f497e93e9e7b6cecc5474  (Sept 8 2016)
   794b2912acc1995afc6fe9501cc0ca8e56565325 (Sept 8 2016)
   b9999158545f3bc089b926086daa666b8e4c7caa (Nov 20) 2016
   6a04ef7ceddae0930eba6cc57ba2ebfcef00abab  Mar 28 2017

This still does not yield the same level of performance as a vanilla
 python 2.7.14 source tree which suggests there are other commits
 that would provide a performance boost.

Change-Id: Iaddf7ead672412ad1878217ddcfaf88c9b0e2443
Signed-off-by: Al Bailey <Al.Bailey@windriver.com>
2018-06-28 15:25:31 -05:00
..
2018-06-28 15:25:31 -05:00
2018-06-28 15:25:31 -05:00

The src rpm version  indicates that we are patching python 2.7.5, however there are at least 58 patches
added by Centos to fix issues fixed in the later python 2.7 releases.