-
-
Notifications
You must be signed in to change notification settings - Fork 30.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
gh-108388: Split test_multiprocessing_spawn #108396
Conversation
Split test_multiprocessing_fork, test_multiprocessing_forkserver and test_multiprocessing_spawn into test packages. Each package is made of 4 sub-tests: processes, threads, manager and misc. It allows running more tests in parallel and so reduce the total test duration.
Example running 4 slow tests:
Timing (reference => this PR): 3 min 22 sec => 2 min 22 sec (-1 min) On the main branch:
With this PR + PR #108393 (needed for this test):
All CPUs are well used, the system load peak is 12.33 which is a good thing (the machine has 12 threads/6 cores). Full logs:
|
@@ -6126,7 +6126,8 @@ class ThreadsMixin(BaseMixin): | |||
# Functions used to create test cases from the base ones in this module | |||
# | |||
|
|||
def install_tests_in_module_dict(remote_globs, start_method): | |||
def install_tests_in_module_dict(remote_globs, start_method, | |||
only_type=None, exclude_types=False): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This function needs proper documentation as to what it does and how it behaves. The new parameters behaviors are unobvious.
Thanks @vstinner for the PR 🌮🎉.. I'm working now to backport this PR to: 3.12. |
GH-108442 is a backport of this pull request to the 3.12 branch. |
Split test_multiprocessing_fork, test_multiprocessing_forkserver and test_multiprocessing_spawn into test packages. Each package is made of 4 sub-tests: processes, threads, manager and misc. It allows running more tests in parallel and so reduce the total test duration. (cherry picked from commit aa9a359) Co-authored-by: Victor Stinner <[email protected]>
gh-108388: Split test_multiprocessing_spawn (GH-108396) Split test_multiprocessing_fork, test_multiprocessing_forkserver and test_multiprocessing_spawn into test packages. Each package is made of 4 sub-tests: processes, threads, manager and misc. It allows running more tests in parallel and so reduce the total test duration. (cherry picked from commit aa9a359) Co-authored-by: Victor Stinner <[email protected]>
Thanks @vstinner for the PR 🌮🎉.. I'm working now to backport this PR to: 3.11. |
Split test_multiprocessing_fork, test_multiprocessing_forkserver and test_multiprocessing_spawn into test packages. Each package is made of 4 sub-tests: processes, threads, manager and misc. It allows running more tests in parallel and so reduce the total test duration. (cherry picked from commit aa9a359) Co-authored-by: Victor Stinner <[email protected]>
GH-109688 is a backport of this pull request to the 3.11 branch. |
Split test_multiprocessing_fork, test_multiprocessing_forkserver and test_multiprocessing_spawn into test packages. Each package is made of 4 sub-tests: processes, threads, manager and misc. It allows running more tests in parallel and so reduce the total test duration. (cherry picked from commit aa9a359) Co-authored-by: Victor Stinner <[email protected]>
gh-108388: Split test_multiprocessing_spawn (GH-108396) Split test_multiprocessing_fork, test_multiprocessing_forkserver and test_multiprocessing_spawn into test packages. Each package is made of 4 sub-tests: processes, threads, manager and misc. It allows running more tests in parallel and so reduce the total test duration. (cherry picked from commit aa9a359) Co-authored-by: Victor Stinner <[email protected]>
Split test_multiprocessing_fork, test_multiprocessing_forkserver and test_multiprocessing_spawn into test packages. Each package is made of 4 sub-tests: processes, threads, manager and misc. It allows running more tests in parallel and so reduce the total test duration.