[pypy-issue] Issue #2242: Release builds should be profiled builds (pypy/pypy)
Pete Vine
issues-reply at bitbucket.org
Fri Feb 19 14:50:54 EST 2016
New issue 2242: Release builds should be profiled builds
https://bitbucket.org/pypy/pypy/issues/2242/release-builds-should-be-profiled-builds
Pete Vine:
It turns out the generated C code is not so brittle as to make profiled builds impossible.
Required steps that could be automated:
1. translate with `--source` option
2. compile after adding `-fprofile-generate -lgcov` to the Makefile
3. collect profile data by benchmarking the "intermediate" binary inside the source directory
4. recompile with `-fprofile-use`
5. ???
6. Profit! The measured speedup for most of the benchmarks is a nice `10-40%`
The process takes significantly longer than the vanilla one but is definitely worth it once in a while. Official releases seem like the perfect candidates to be built this way.
I can upload the 32-bit Linux standard/profiled pypy binaries (same revision) if anyone's interested in a quick test.
More information about the pypy-issue
mailing list