-
Notifications
You must be signed in to change notification settings - Fork 913
Tracy profiler integration #2536
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
Conversation
|
Hi Nice to have this, can you also add your blog post to the tutorial page on su2code.github.io, maybe under Developer Docs? |
I have added a new file, Tracy-Integration.md, to the _docs_v7 directory in the develop branch of the su2code/su2code.github.io repository and submitted a pull request. Is this the correct location for new documentation? |
pcarruscag
left a comment
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.
Does this only profile the functions you annotate? Do you still see them as fraction of total time even if you don't annotate the main function of the code?
To integrate this type of tools that require intrusive changes to be used (i.e. annotations) we need to wrap them.
Similar to what we do for AD, OpenMP, etc., if tracy is included then you define some macros for the functionality that we want to expose (e.g. ZoneScopedN) and you turn on the include of tracy (it should not be included explicitly in any other files).
Have a look at omp_structure.hpp and follow the same pattern.
a50e975 to
c7ed362
Compare
Yes, it profiles only the annotated functions, and the functions still appear as a fraction of the total time without annotating the main function. |
5a6b58e to
4672afd
Compare
Proposed Changes
Integrated the Tracy profiler into the SU2 codebase with Meson support. Added build options for enabling profiling, instrumented the function Predict_MLP in SU2_CFD/src/fluid/CDataDrivenFluid.cpp with Tracy macros for demonstration of performance monitoring, and updated the configuration summary for clarity. These changes allow real-time, low-overhead performance analysis via the Tracy GUI.
Details of these changes are documented in my blog post: https://dpcfd.com/posts/2025/07/gsoc-week-3/Details of these changes are here: https://github.com/divyaprakash-iitd/su2code.github.io/blob/develop/_docs_v7/Tracy-Integration.md
Related Work
This PR does not resolve any open issues but contributes to profiling. This effort aligns with ongoing GSoC work.
PR Checklist
pre-commit run --allto format old commits.