[Python-Dev] More optimisation ideas
Steve Dower
steve.dower at python.org
Sat Jan 30 11:31:32 EST 2016
On 30Jan2016 0645, Serhiy Storchaka wrote:
> $ ./python -m timeit -s "import codecs; from encodings.cp437 import
> decoding_table" -- "codecs.charmap_build(decoding_table)"
> 100000 loops, best of 3: 4.36 usec per loop
>
> Getting rid from charmap_build() would save you at most 4.4 microseconds
> per encoding. 0.0005 seconds if you have imported *all* standard encodings!
Just as happy to be proven wrong. Perhaps I misinterpreted my original
profiling and then, embarrassingly, ran with the result for a long time
without retesting.
> And how you expected to store encoding_table in more efficient way?
There's nothing inefficient about its storage, but as it does not change
it would be trivial to store it statically. Then "building" the map is
simply obtaining a pointer into an already loaded memory page. Much
faster than building it on load, but both are clearly insignificant
compared to other factors.
Cheers,
Steve
More information about the Python-Dev
mailing list