[Python-Dev] To reduce Python "application" startup time

Serhiy Storchaka storchaka at gmail.com
Sat Sep 23 18:39:26 EDT 2017


05.09.17 16:02, INADA Naoki пише:
> While I can't attend to sprint, I saw etherpad and I found
> Neil Schemenauer and Eric Snow will work on startup time.
> 
> I want to share my current knowledge about startup time.
> 
> For bare (e.g. `python -c pass`) startup time,  I'm waiting C
> implementation of ABC.
> 
> But application startup time is more important.  And we can improve
> them with optimize importing common stdlib.
> 
> Current `python -v` is not useful to optimize import.
> So I use this patch to profile import time.
> https://gist.github.com/methane/e688bb31a23bcc437defcea4b815b1eb
> 
> With this profile, I tried optimize `python -c 'import asyncio'`, logging
> and http.client.
> 
> https://gist.github.com/methane/1ab97181e74a33592314c7619bf34233#file-0-optimize-import-patch
> 
> With this small patch:
> 
> logging: 14.9ms -> 12.9ms
> asyncio: 62.1ms -> 58.2ms
> http.client: 43.8ms -> 36.1ms

See also https://bugs.python.org/issue30152 which optimizes the import 
time of argparse using similar technique. I think these patches overlap.



More information about the Python-Dev mailing list