buildbot's are needlessly compiling -O0

our buildbots are setup to configure --with-pydebug which also unfortunately causes them to compile with -O0... this results in a python binary that is excruciatingly slow and makes the entire test suite run take a long time. given that nobody is ever going to run a gdb or another debugger on the buildbot generated transient binaries themselves how about we speed all of the buildbot's up by adding CFLAGS=-O2 to the configure command line? Sure, the compile step will take a bit longer but that is dwarfed by the test time as it is: http://buildbot.python.org/all/builders/AMD64%20Ubuntu%20LTS%203.x/builds/32... http://buildbot.python.org/all/builders/ARMv7%203.x/builds/7 http://buildbot.python.org/all/builders/AMD64%20Snow%20Leop%203.x/builds/639 It should dramatically decrease the turnaround latency for buildbot results. -gps

On 24 Nov 2013 17:15, "Gregory P. Smith" <greg@krypto.org> wrote:
our buildbots are setup to configure --with-pydebug which also
unfortunately causes them to compile with -O0... this results in a python binary that is excruciatingly slow and makes the entire test suite run take a long time.
given that nobody is ever going to run a gdb or another debugger on the
buildbot generated transient binaries themselves how about we speed all of the buildbot's up by adding CFLAGS=-O2 to the configure command line? The main problem is that doing so would disable test_gdb. Humans don't run gdb on those binaries, but the test suite does. I agree it would be nice to figure out a way to run most of the tests on an optimised build, though. Cheers, Nick.
Sure, the compile step will take a bit longer but that is dwarfed by the
test time as it is:
http://buildbot.python.org/all/builders/AMD64%20Ubuntu%20LTS%203.x/builds/32...
http://buildbot.python.org/all/builders/ARMv7%203.x/builds/7
http://buildbot.python.org/all/builders/AMD64%20Snow%20Leop%203.x/builds/639
It should dramatically decrease the turnaround latency for buildbot
results.
-gps
_______________________________________________ Python-Dev mailing list Python-Dev@python.org https://mail.python.org/mailman/listinfo/python-dev Unsubscribe:
https://mail.python.org/mailman/options/python-dev/ncoghlan%40gmail.com

On Sun, Nov 24, 2013 at 12:43 PM, Nick Coghlan <ncoghlan@gmail.com> wrote:
On 24 Nov 2013 17:15, "Gregory P. Smith" <greg@krypto.org> wrote:
our buildbots are setup to configure --with-pydebug which also unfortunately causes them to compile with -O0... this results in a python binary that is excruciatingly slow and makes the entire test suite run take a long time.
given that nobody is ever going to run a gdb or another debugger on the buildbot generated transient binaries themselves how about we speed all of the buildbot's up by adding CFLAGS=-O2 to the configure command line?
The main problem is that doing so would disable test_gdb. Humans don't run gdb on those binaries, but the test suite does.
Is there a danger that the code tested under GDB is not tested in "natural environment" for pythons? -- anatoly t.

On Sun, Nov 24, 2013 at 6:12 AM, anatoly techtonik <techtonik@gmail.com>wrote:
On Sun, Nov 24, 2013 at 12:43 PM, Nick Coghlan <ncoghlan@gmail.com> wrote:
On 24 Nov 2013 17:15, "Gregory P. Smith" <greg@krypto.org> wrote:
our buildbots are setup to configure --with-pydebug which also unfortunately causes them to compile with -O0... this results in a
python
binary that is excruciatingly slow and makes the entire test suite run take a long time.
given that nobody is ever going to run a gdb or another debugger on the buildbot generated transient binaries themselves how about we speed all of the buildbot's up by adding CFLAGS=-O2 to the configure command line?
The main problem is that doing so would disable test_gdb. Humans don't run gdb on those binaries, but the test suite does.
Is there a danger that the code tested under GDB is not tested in "natural environment" for pythons? --
What are you talking about? Have you actually looked at test_gdb before writing this email? Eli

On Nov 23, 2013, at 11:13 PM, Gregory P. Smith wrote:
our buildbots are setup to configure --with-pydebug which also unfortunately causes them to compile with -O0... this results in a python binary that is excruciatingly slow and makes the entire test suite run take a long time.
It would be fine(-ish) to add this for improved buildbot performance, but please do not change this for default --with-pydebug builds. When you're debugging Python, -O0 just makes so much more sense. -Barry

Am 24.11.2013 08:13, schrieb Gregory P. Smith:
our buildbots are setup to configure --with-pydebug which also unfortunately causes them to compile with -O0... this results in a python binary that is excruciatingly slow and makes the entire test suite run take a long time.
given that nobody is ever going to run a gdb or another debugger on the buildbot generated transient binaries themselves how about we speed all of the buildbot's up by adding CFLAGS=-O2 to the configure command line?
Sure, the compile step will take a bit longer but that is dwarfed by the test time as it is:
http://buildbot.python.org/all/builders/AMD64%20Ubuntu%20LTS%203.x/builds/32... http://buildbot.python.org/all/builders/ARMv7%203.x/builds/7 http://buildbot.python.org/all/builders/AMD64%20Snow%20Leop%203.x/builds/639
It should dramatically decrease the turnaround latency for buildbot results.
maybe check if the compiler understands -Og (GCC 4.8), and use that? Otoh, it would be good to check with -O2 or -O3 too, common values used when building python for production use. Matthias
participants (6)
-
anatoly techtonik
-
Barry Warsaw
-
Eli Bendersky
-
Gregory P. Smith
-
Matthias Klose
-
Nick Coghlan