Skip to content

[CI] pin build profile job to ninja -j nproc - #2073

Merged
mergify[bot] merged 9 commits into
Shamrock-code:mainfrom
tdavidcl:cursor/build-profile-ninja-jobs-d666
Aug 17, 2026
Merged

mergify[bot] merged 9 commits into
Shamrock-code:mainfrom
tdavidcl:cursor/build-profile-ninja-jobs-d666

Conversation

@tdavidcl

@tdavidcl tdavidcl commented Aug 17, 2026

Copy link
Copy Markdown
Member

Replace shammake with explicit ninja -j $(nproc) in the build profile workflow so ClangBuildAnalyzer timing reflects exactly the available CPU count instead of ninja's default oversubscription. It should reduce timing inconsitencies.

Replace shammake with explicit ninja -j $(nproc) in the build
profile workflow so ClangBuildAnalyzer timing reflects exactly the
available CPU count instead of ninja's default oversubscription.

Temporarily enable the build profile job in light CI mode for testing.

Assisted-by: Cursor

Co-authored-by: David--Cléris Timothée <tdavidcl@users.noreply.github.com>
@coderabbitai

coderabbitai Bot commented Aug 17, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: ASSERTIVE

Plan: Pro Plus

Run ID: 04c03ae0-aaa4-41be-ada8-839e89495f1b

📥 Commits

Reviewing files that changed from the base of the PR and between 2e21b07 and c80f260.

📒 Files selected for processing (2)
  • .github/workflows/main_workflow.yml
  • .github/workflows/shamrock-acpp-clang-build-profile.yml

Included review availability: Your plan includes up to 1 review per rolling hour; 0 remain after this review.


📝 Walkthrough

Walkthrough

The profiling workflow now runs during light CI and builds with parallel Ninja execution instead of shammake.

Changes

Profiling workflow

Layer / File(s) Summary
Profiling job execution condition
.github/workflows/main_workflow.yml
The profiling job no longer skips execution when inputs.light_ci is enabled.
Parallel instrumented build
.github/workflows/shamrock-acpp-clang-build-profile.yml
The instrumented build uses ninja -j "$(nproc)" instead of shammake.

Estimated code review effort: 2 (Simple) | ~10 minutes

Merge Risk: ⚪ Minimal · up to c80f2

This PR makes a localized CI build-command change and temporarily enables the build-profile job in light CI; no actionable merge-blocking risk remains beyond normal checks and review.

Possibly related PRs

Suggested reviewers: shamrock-code-admin

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed The title clearly identifies the main workflow change: pinning the build profile job to Ninja with the CPU count.
Description check ✅ Passed The description accurately explains replacing shammake with explicit Ninja parallelism and the expected timing benefit.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions

Copy link
Copy Markdown
Contributor

Thanks @tdavidcl for opening this PR!

You can do multiple things directly here:
1 - Comment pre-commit.ci run to run pre-commit checks.
2 - Comment pre-commit.ci autofix to apply fixes.
3 - Add label autofix.ci to fix authorship & pre-commit for every commit made.
4 - Add label light-ci to only trigger a reduced & faster version of the CI (need the full one before merge).
5 - Add label trigger-ci to create an empty commit to trigger the CI.

Once the workflow completes a message will appear displaying informations related to the run.

Also the PR gets automatically reviewed by gemini, you can:
1 - Comment /gemini review to trigger a review
2 - Comment /gemini summary for a summary
3 - Tag it using @gemini-code-assist either in the PR or in review comments on files

Comment thread .github/workflows/main_workflow.yml Outdated
@github-actions

Copy link
Copy Markdown
Contributor

Workflow report

workflow report corresponding to commit 380b2ec
Commiter email is timothee.davidcleris@proton.me

Light CI is enabled. This will only run the basic tests and not the full tests.
Merging a PR require the job "on PR / all" to pass which is disabled in this case.

Pre-commit check report

Pre-commit check: ✅

trim trailing whitespace.................................................Passed
fix end of files.........................................................Passed
check for merge conflicts................................................Passed
check that executables have shebangs.....................................Passed
check that scripts with shebangs are executable..........................Passed
check for added large files..............................................Passed
check for case conflicts.................................................Passed
check for broken symlinks................................................Passed
check yaml...............................................................Passed
detect private key.......................................................Passed
No-tabs checker..........................................................Passed
Tabs remover.............................................................Passed
cmake-format.............................................................Passed
Validate GitHub Workflows................................................Passed
clang-format.............................................................Passed
ruff check...............................................................Passed
ruff format..............................................................Passed
Check doxygen headers....................................................Passed
Check license headers....................................................Passed
Check #pragma once.......................................................Passed
Check SYCL #include......................................................Passed
No ssh in git submodules remote..........................................Passed
No UTF-8 in files (except for authors)...................................Passed

Test pipeline can run.

Clang-tidy diff report

No relevant changes found.
Well done!

You should now go back to your normal life and enjoy a hopefully sunny day while waiting for the review.

Doxygen diff with main

Removed warnings : 0
New warnings : 0
Warnings count : 8182 → 8182 (0.0%)

Detailed changes :

@mergify

mergify Bot commented Aug 17, 2026

Copy link
Copy Markdown
Contributor

Queued — the merge queue status continues in this comment ↓.

@tdavidcl

Copy link
Copy Markdown
Member Author

@Mergifyio queue

@mergify

mergify Bot commented Aug 17, 2026

Copy link
Copy Markdown
Contributor

Merge Queue Status

This pull request spent 1 hour 51 minutes 29 seconds in the queue, including 1 hour 41 minutes 22 seconds running CI.

Required conditions to merge
  • check-success = all

@mergify mergify Bot added the queued label Aug 17, 2026
@mergify
mergify Bot merged commit f623e58 into Shamrock-code:main Aug 17, 2026
39 checks passed
@mergify mergify Bot removed the queued label Aug 17, 2026
@tdavidcl
tdavidcl deleted the cursor/build-profile-ninja-jobs-d666 branch September 14, 2026 20:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants