gh-108388: test_concurrent_futures requires cpu - #108389
Conversation
The test_concurrent_futures and test_multiprocessing_spawn tests now require the 'cpu' resource. Skip these tests unless the 'cpu' resource is enabled (it is disabled by default). test_concurrent_futures is no longer skipped if Python is built with ASAN or MSAN sanitizer.
|
Last year, issue #90682 discussed solutions to make the CI faster:
The issue title was "test_peg_generator takes 8 minutes on Windows" and it was closed when Gregory disabled compiler optimizations on Windows in test_peg_generator: the test takes 3-5 min instead of 5-16 min. |
|
Total test duration, before (PR #108386) => after (this PR):
The exact time depends if slowest tests are run first, since tests are randomized. Details of timing on this PR. Windows x86: Windows x64: macOS: Ubuntu: Address Sanitizer: |
test_asyncio was actually splitted into sub-modules like |
|
See also #108421 which marks only the slowest tests, allowing faster tests to run. The running time of test_concurrent_futures was reduced from 2 min 26 sec to 1 min 20 sec. |
|
With them split up I don't believe we should do use "requires cpu" for concurrent_futures or multiprocessing. I rely on CI for testing of changes to things on most platforms. If github CI doesn't use -uall or -ucpu then I won't have a way to meaningfully test changes. |

The test_concurrent_futures and test_multiprocessing_spawn tests now require the 'cpu' resource. Skip these tests unless the 'cpu' resource is enabled (it is disabled by default).
test_concurrent_futures is no longer skipped if Python is built with ASAN or MSAN sanitizer.