[Python-Dev] Python startup time
Victor Stinner
victor.stinner at gmail.com
Thu Jul 20 04:56:43 EDT 2017
More information about the Python-Dev mailing list
Thu Jul 20 04:56:43 EDT 2017
- Previous message (by thread): [Python-Dev] Python startup time
- Next message (by thread): [Python-Dev] Python most popular progamming language on github?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Hi, I applied the patch above to count the number of times that Python is run. Running the Python test suite with "./python -m test -j0 -rW" runs Python 2,256 times. Honestly, I expected more. I'm running tests with Python compiled in debug mode. And in debug mode, Python startup time is much worse: haypo at selma$ python3 -m perf command --inherit=PYTHONPATH -v -- ./python -c pass command: Mean +- std dev: 46.4 ms +- 2.3 ms FYI I'm using gcc -O0 rather than -Og to make compilation even faster. Victor diff --git a/Lib/site.py b/Lib/site.py index 7dc1b04..4b0c167 100644 --- a/Lib/site.py +++ b/Lib/site.py @@ -540,6 +540,21 @@ def execusercustomize(): (err.__class__.__name__, err)) +def run_counter(): + import fcntl + + fd = os.open("/home/haypo/prog/python/master/run_counter", + os.O_WRONLY | os.O_CREAT | os.O_APPEND) + try: + fcntl.flock(fd, fcntl.LOCK_EX) + try: + os.write(fd, b'\x01') + finally: + fcntl.flock(fd, fcntl.LOCK_UN) + finally: + os.close(fd) + + def main(): """Add standard site-specific directories to the module search path. @@ -568,6 +583,7 @@ def main(): execsitecustomize() if ENABLE_USER_SITE: execusercustomize() + run_counter() # Prevent extending of sys.path when python was started with -S and # site is imported later.
- Previous message (by thread): [Python-Dev] Python startup time
- Next message (by thread): [Python-Dev] Python most popular progamming language on github?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-Dev mailing list