falcon
falcon copied to clipboard
Overly-aggressive optimization at module level
Running pystone with optimizations enabled causes it to prune too much of the program and results in it not actually running the benchmark. I'm guessing that LOAD/STORE_NAME are being treated improperly.
power kermit:/tmp/falcon-master [10520]% PYTHONPATH=src/ python -mfalcon benchmarks/pystone.py
I 0.000 [ 9819] ../../src/falcon/rcompile.cc:888 COMPILED code, 36 registers, 113 operations, 155 stack ops.
I 0.000 [ 9819] ../../src/falcon/rcompile.cc:888 COMPILED Record, 5 registers, 8 operations, 15 stack ops.
power kermit:/tmp/falcon-master [10521]% DISABLE_OPT=1 PYTHONPATH=src/ python -mfalcon benchmarks/pystone.py
I 0.000 [ 9820] ../../src/falcon/rcompile.cc:888 COMPILED code, 97 registers, 113 operations, 155 stack ops.
I 0.000 [ 9820] ../../src/falcon/rcompile.cc:888 COMPILED Record, 8 registers, 8 operations, 15 stack ops.
I 0.000 [ 9820] ../../src/falcon/rcompile.cc:888 COMPILED main, 14 registers, 15 operations, 21 stack ops.
I 0.000 [ 9820] ../../src/falcon/rcompile.cc:888 COMPILED pystones, 4 registers, 3 operations, 4 stack ops.
I 0.001 [ 9820] ../../src/falcon/rcompile.cc:888 COMPILED Proc0, 105 registers, 120 operations, 182 stack ops.
I 0.002 [ 9820] ../../src/falcon/rcompile.cc:888 COMPILED Proc5, 3 registers, 4 operations, 6 stack ops.
I 0.002 [ 9820] ../../src/falcon/rcompile.cc:888 COMPILED Proc4, 7 registers, 10 operations, 12 stack ops.
I 0.002 [ 9820] ../../src/falcon/rcompile.cc:888 COMPILED Func2, 28 registers, 33 operations, 60 stack ops.
I 0.002 [ 9820] ../../src/falcon/rcompile.cc:888 COMPILED Func1, 8 registers, 8 operations, 14 stack ops.
I 0.002 [ 9820] ../../src/falcon/rcompile.cc:888 COMPILED Proc7, 8 registers, 5 operations, 10 stack ops.
I 0.002 [ 9820] ../../src/falcon/rcompile.cc:888 COMPILED Proc8, 31 registers, 30 operations, 70 stack ops.
I 0.002 [ 9820] ../../src/falcon/rcompile.cc:888 COMPILED Proc1, 27 registers, 37 operations, 59 stack ops.
I 0.002 [ 9820] ../../src/falcon/rcompile.cc:888 COMPILED copy, 9 registers, 8 operations, 13 stack ops.
I 0.002 [ 9820] ../../src/falcon/rcompile.cc:888 COMPILED Proc3, 12 registers, 15 operations, 18 stack ops.
I 0.002 [ 9820] ../../src/falcon/rcompile.cc:888 COMPILED Proc6, 24 registers, 42 operations, 51 stack ops.
I 0.002 [ 9820] ../../src/falcon/rcompile.cc:888 COMPILED Func3, 7 registers, 8 operations, 10 stack ops.
I 0.003 [ 9820] ../../src/falcon/rcompile.cc:888 COMPILED Proc2, 16 registers, 17 operations, 29 stack ops.
Pystone(1.1) time for 50000 passes = 0.19
This machine benchmarks at 263158 pystones/second
power kermit:/tmp/falcon-master [10522]%