-
Notifications
You must be signed in to change notification settings - Fork 53
Aggregate compile time trace in build job #1380
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
Aggregate compile time trace in build job #1380
Conversation
feb412f
to
84d643d
Compare
At least the build job works again, but I have messed up the artifacts name. Next try: https://github.com/amgebauer/4C/actions/runs/18410019861/job/52459560774 |
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.
Pull Request Overview
This PR optimizes the compile time tracing workflow by aggregating ninja tracing output directly in the build job to prevent storage issues from individual trace files. The main goal is to consolidate tracing data earlier in the pipeline and clean up individual files to avoid running out of storage space.
Key changes:
- Created a reusable action to aggregate ninja tracing output with optional cleanup
- Moved trace aggregation from the analyze job to the build job
- Simplified the analyze job by removing duplicate tracing logic
Reviewed Changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
File | Description |
---|---|
.github/workflows/nightly_tests.yml | Integrated ninja tracing aggregation into build job and streamlined analyze job |
.github/actions/aggregate_ninja_tracing/action.yml | New reusable action for aggregating ninja traces with cleanup option |
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
Unfortunately, this does not (yet) work as hoped. We could maybe replace it with just generating the html-report. |
ClangBuildAnalyzer aggregates the results and gives a very concise overview about the build performance. I use its "expensive header" info quite often. |
84d643d
to
101bad2
Compare
I now moved the whole compile time analysis to the clang build job (in an extra action). Now, the clang18 job works again: https://github.com/amgebauer/4C/actions/runs/18459444810 In a later step, we can use the artifacts and generate an html report with catapult to make the report more usable. Please review |
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.
Pull Request Overview
Copilot reviewed 2 out of 2 changed files in this pull request and generated 2 comments.
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
Directly aggregate the compile time trace in the build job and clean all other time-trace json files to avoid running out of storage.
Closes #1361
Let's see whether this works: https://github.com/amgebauer/4C/actions/runs/18407082001/job/52449454062