[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