python 3 subprocess performance

Jan Bramkamp crest at rlwinm.de
Thu Apr 11 14:27:01 UTC 2019


Please run python under truss -f. Does it try to close(2) all possible
file descriptors? Does the runtime decrease if fdescfs is mounted at
/dev/fd?

On 11.04.19 15:16, Alexander Zagrebin wrote:
> Hi!
> 
> I've noticed the subprocess performance issue with python 3.
> For example, this simple script takes just 0,15 second to complete
> with python 2.7, but more than 5 sec with python 3.6:
> 
> import subprocess
> 
> for i in range(100):
>     p = subprocess.Popen(['uname', '-a'], stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
>     (stdoutdata, stderrdata) = p.communicate()
> 
> Profiling with the cProfile shows, that this excessive 5 seconds was
> wasted in the "{built-in method posix.read}"
> 
> Could anybody confirm this issue?
> 


More information about the freebsd-ports mailing list