You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
pybench: Cannot compare 2.x and 3.x benchmarks #53348
There is a bug in _pickle that prevents 2.x pickles that contain classic class instances from loading in 3.x. This is addressed in bpo-5180.
Once _pickle issue is addresses, 2.7 benchmark files still cannot be loaded because they contain references to the Unicode tests and Unicode.py is not loadable in python3.
Once Unicode.py gets 2to3 treatment, we are still left with
Benchmark versions differ: cannot compare this benchmark to "32.bench" !
The last issue is probably the simplest. Version number was bumped up in r69411, and a log entry says that the intent was to keep pybench 2.1 compatible with 2.x. Indeed, pybench 2.1 from py3k runs under trunk python and resulting benchmark file can be compared with 3.x generated benchmark once issues 1 and 2 above are resolved. It may, however be worth consideration to synchronize pybench versions shipped with 27 and 32. I understand that this is likely to be too late for 2.7, but I am checking 2.7 version in case this is considered appropriate for 2.7.1.
The Unicode.py issue was discussed under bpo-5180 in msg108819 and msg108821. I like MAL's suggestion of Strings3 module, but I think it would be useful to be able to compare 2.x str performance to both 3.x str and 3.x bytes. Similarly, I think String3 should have from __future__ import unicode_literals and be loadable in 2.7/2.6 and server as means to compare 2.x and 3.x unicode performance.
For the _pickle issue, I am about to attach a patch to bpo-5180.
Activity
abalkin commentedon Jun 28, 2010
There are several issues that prevent
from working.
There is a bug in _pickle that prevents 2.x pickles that contain classic class instances from loading in 3.x. This is addressed in bpo-5180.
Once _pickle issue is addresses, 2.7 benchmark files still cannot be loaded because they contain references to the Unicode tests and Unicode.py is not loadable in python3.
Once Unicode.py gets 2to3 treatment, we are still left with
The last issue is probably the simplest. Version number was bumped up in r69411, and a log entry says that the intent was to keep pybench 2.1 compatible with 2.x. Indeed, pybench 2.1 from py3k runs under trunk python and resulting benchmark file can be compared with 3.x generated benchmark once issues 1 and 2 above are resolved. It may, however be worth consideration to synchronize pybench versions shipped with 27 and 32. I understand that this is likely to be too late for 2.7, but I am checking 2.7 version in case this is considered appropriate for 2.7.1.
The Unicode.py issue was discussed under bpo-5180 in msg108819 and msg108821. I like MAL's suggestion of Strings3 module, but I think it would be useful to be able to compare 2.x str performance to both 3.x str and 3.x bytes. Similarly, I think String3 should have from __future__ import unicode_literals and be loadable in 2.7/2.6 and server as means to compare 2.x and 3.x unicode performance.
For the _pickle issue, I am about to attach a patch to bpo-5180.
BreamoreBoy commentedon Jul 10, 2014
@alexander do you want to pick this up again?
iritkatriel commentedon Jun 17, 2021
Can we close this? I don't think we are still interested in performance comparisons with Python 2.
malemburg commentedon Jun 17, 2021
Yes, closing.