pytorch
1e4a2742 - [dynamo] avoid popen.communicate() (#87335)

Commit
2 years ago
[dynamo] avoid popen.communicate() (#87335) It seems like when popen.communicate() is used it waits for all the desendents of popen to close the stdin/stderr. However, if we have have worker processes running in the child, and the child segfaults, those processes will stay alive until someone waitpid's the child. Since those children have open handles to the stdin/stderr pipe, communicate never returns. This change just writes the output to temp files and directly calls wait() on the child, which returns as soon as it dies. cc @jansel @lezcano @fdrocha Pull Request resolved: https://github.com/pytorch/pytorch/pull/87335 Approved by: https://github.com/anijain2305, https://github.com/voznesenskym
Author
Committer
Parents
Loading