On 9/5/2017 9:02 AM, INADA Naoki wrote:
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
I haven't created pull request yet.
(Can I create without issue, as trivial patch?)
Trivial, no-issue PRs are meant for things like typo fixes that need no
discussion or record.
Moving imports in violation of the PEP 8 rule, "Imports are always put
at the top of the file, just after any module comments and docstrings,
and before module globals and constants", is not trivial. Doing so
voluntarily for speed, as opposed to doing so necessarily to avoid
circular import errors, is controversial.
--
Terry Jan Reedy
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
https://mail.python.org/mailman/listinfo/python-dev
Unsubscribe:
https://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com