Skip to content

ci: ctest --parallel #11546

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

Closed
wants to merge 2 commits into from
Closed

ci: ctest --parallel #11546

wants to merge 2 commits into from

Conversation

ochafik
Copy link
Collaborator

@ochafik ochafik commented Jan 31, 2025

DRAFT: unclear if useful at all

Edit: doesn't look beneficial at all (parallel ctest run vs. other run), even for the jobs that do run ctests (not that many anyway), so canning this.

Trying to use some of those sweet github runner cores, now that ci time is dominated by tests for some jobs (since #11516)

Note: server tests are trickier to parallelize, will need distinct ports + something like pytest-xdist or pytest-parallel, and parallel server might compete for compute and RAM anyway, esp. for the slow tests

@qnixsynapse
Copy link
Collaborator

Hi. Is it possible to do conditional builds based on changes instead of running all build targets for every PR?
Please excuse me for asking it here.

@ochafik ochafik changed the title ci: parallel cmake builds & ctests ci: ctest --parallel Jan 31, 2025
@ochafik
Copy link
Collaborator Author

ochafik commented Jan 31, 2025

Hi. Is it possible to do conditional builds based on changes instead of running all build targets for every PR?

Hey @qnixsynapse , I don't know about that (even my weak attempts to skip CI following these docs failed, but since #11516 if your change doesn't cause massive changes in partial / final binaries (object files, libraries, executables), most if not all of your build will hit the ccache and will take as little as 10s per job (instead of 5min). That is, a simple README update will still incur testing costs but hopefully no build (once I iron out a few issues).

Please excuse me for asking it here.

Hehe, thanks for asking ;-)

@github-actions github-actions bot added the devops improvements to build systems and github actions label Jan 31, 2025
@qnixsynapse
Copy link
Collaborator

@ochafik I see. Thank you. I am actually worried about availability of enough memory for ccache to work. For instance, the Windows SYCL build is currently failing probably because of that.

@ochafik
Copy link
Collaborator Author

ochafik commented Jan 31, 2025

@ochafik I see. Thank you. I am actually worried about availability of enough memory for ccache to work. For instance, the Windows SYCL build is currently failing probably because of that.

@qnixsynapse Doesn’t look like we’ve hit the cache limits yet (also, added eviction for files unused for more than 1d). And I believe the win sycl build will be fixed by #11545 🤞

@slaren
Copy link
Member

slaren commented Jan 31, 2025

The CI only runs when there are code changes, purely documentation changes will skip it. This is configured here:
https://github.com/ggerganov/llama.cpp/blob/a83f528688324a21484a97af1d1be5e1bc8d4c8e/.github/workflows/build.yml#L14-L16

@ochafik
Copy link
Collaborator Author

ochafik commented Jan 31, 2025

Turns out not useful, closing.

@ochafik ochafik closed this Jan 31, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
devops improvements to build systems and github actions
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants