[Python-Dev] A new dictionary implementation

Mark Shannon mark at hotpy.org
Thu Feb 9 23:45:28 CET 2012


francis wrote:
> Hi Mark,
>> Bah... typo in assert statement.
>> My fault for not testing the debug build (release build worked fine).
>> Both builds working now.
> Yeah, now is working and passes all tests also on my machine.
> 
> I've tried to run the test suite but I'm getting a SyntaxError:
> (may be you know it's just the first time that I try the tool):
> 
> 
> =============================
> ci at random:~/prog/cpython/benchmarks$ python perf.py -r -b apps python 
> ../cpython_new_dict/python
> Running 2to3...
> INFO:root:Running ../cpython_new_dict/python lib/2to3/2to3 -f all 
> lib/2to3_data
> Traceback (most recent call last):
>   File "perf.py", line 2236, in <module>
>     main(sys.argv[1:])
>   File "perf.py", line 2192, in main
>     options)))
>   File "perf.py", line 1279, in BM_2to3
>     return SimpleBenchmark(Measure2to3, *args, **kwargs)
>   File "perf.py", line 706, in SimpleBenchmark
>     *args, **kwargs)
>   File "perf.py", line 1275, in Measure2to3
>     return MeasureCommand(command, trials, env, options.track_memory)
>   File "perf.py", line 1223, in MeasureCommand
>     CallAndCaptureOutput(command, env=env)
>   File "perf.py", line 1053, in CallAndCaptureOutput
>     raise RuntimeError(u"Benchmark died: " + unicode(stderr, 'ascii'))
> RuntimeError: Benchmark died: Traceback (most recent call last):
>   File "lib/2to3/2to3", line 3, in <module>
>     from lib2to3.main import main
>   File "/home/ci/prog/cpython/benchmarks/lib/2to3/lib2to3/main.py", line 47
>     except os.error, err:
>                            ^
> SyntaxError: invalid syntax
> =============================
> 
> And the baseline is: Python 2.7.2+ (but it also gives me an SyntaxError 
> running on
> python3 default  (e50db1b7ad7b)
> 
> What I'm doing wrong ? (from it's doc: “This project is intended to be an
> authoritative source of benchmarks for all Python implementations.”)

You need to convert the benchamrks to Python3 using 2to3. Instructions 
are in the make_perf3.sh file. You may need to manually fix up the 
output as well :(

Cheers,
Mark.


More information about the Python-Dev mailing list