[issue37790] subprocess.Popen() is extremely slow

Alexander Pyhalov report at bugs.python.org
Wed Aug 7 16:36:00 EDT 2019


New submission from Alexander Pyhalov <apyhalov at gmail.com>:

We've moved illumos-gate wsdiff python tool from Python 2 to Python 3.
The tool does the following - for each file from old and new proto area compares file attributes to find differences in binary otput (spawning elfdump, dump and other utilities). 
Performance has degraded in two times when commands.getstatusoutput() was replaced by subprocess.getstatusoutput().
os.popen() now is Popen() wrapper, so it also has poor performance.
Even naive popen() implementation using os.system() and os.mkstemp() behaved much more efficiently (about two times faster e.g. 20 minuts vs 40 minutes for single tool pass).

----------
components: Library (Lib)
messages: 349197
nosy: Alexander.Pyhalov
priority: normal
severity: normal
status: open
title: subprocess.Popen() is extremely slow
versions: Python 3.5

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue37790>
_______________________________________


More information about the Python-bugs-list mailing list