Skip to content
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

CI: run tests in parallel for all targets #403

Open
WojciechMula opened this issue Apr 9, 2024 · 2 comments
Open

CI: run tests in parallel for all targets #403

WojciechMula opened this issue Apr 9, 2024 · 2 comments

Comments

@WojciechMula
Copy link
Collaborator

Is there anything that prevents us from running ctest -j for the following targets:

$ simdutf/.github/workflows$ grep ctest * | grep -v j
alpine.yml:          ./alpine.sh bash -c "cd build_for_alpine && ctest"
armv7.yml:            ctest --output-on-failure --test-dir build
macos-latest.yml:          ctest --output-on-failure
s390x.yml:            ctest --output-on-failure --test-dir build
ubuntu22sani.yml:          ctest --output-on-failure
ubuntu22sani.yml:          ctest --output-on-failure
vs16-ci.yml:        ctest -C Release   --output-on-failure
vs16-ci.yml:        ctest -C Debug  --output-on-failure -E basic_fuzzer
vs17-ci-cxx20.yml:        ctest -C Release   --output-on-failure
vs17-ci-cxx20.yml:        ctest -C Debug  --output-on-failure  -E basic_fuzzer
vs17-ci.yml:        ctest -C Release   --output-on-failure
vs17-ci.yml:        ctest -C Debug  --output-on-failure  -E basic_fuzzer
vs17-clang-ci.yml:        ctest -C Release   --output-on-failure
vs17-clang-ci.yml:        ctest -C Debug  --output-on-failure  -E basic_fuzzer
@lemire
Copy link
Member

lemire commented Apr 9, 2024

Parallel runs are more likely to run out of memory and fail for spurious reasons (ressouces exhaution). But my instinct in these cases is that we could parallelize without harm.

@WojciechMula
Copy link
Collaborator Author

Yes, there might be some problems if we set # of processes too large. But we always can setup some decent limit on parallelization.

I propose to enable single target per PR, and we'll learn which targets can safely benefit for the -j switch.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants