godot-docs icon indicating copy to clipboard operation
godot-docs copied to clipboard

Add documentation on how to use Tracy and Perfetto

Open dsnopek opened this issue 1 month ago • 8 comments

This takes the existing using_cpp_profilers.rst and moves it to be about "Sampling profilers" (sampling_profilers.rst), so that a new page can be added about "Tracing profilers" (like Perfetto and Tracy!) and makes the old URL into an index that explains the difference and links to both pages.

~~This is marked as DRAFT for the moment, because it only covers Perfetto - I actually haven't had a chance try Tracy yet :-)~~

dsnopek avatar Nov 21 '25 16:11 dsnopek

I've filled in the docs for Tracy now too, so taking this out of draft!

Given that I've only just tried Tracy for the first time, I'm very curious to hear if I'm using it correctly or not :-)

dsnopek avatar Nov 21 '25 21:11 dsnopek

@Ivorforce @AThousandShips Thanks for the review! I think I've integrated all your feedback in my latest push :-)

dsnopek avatar Nov 24 '25 21:11 dsnopek

When I previously used a Tracy integration, GDExtensions could not reload. (At least on Linux, I'm not sure about Windows).

If this is still true, it may be worth mentioning.

Ryan-000 avatar Dec 03 '25 17:12 Ryan-000

Did you use the Tracy Gdextension?

Ivorforce avatar Dec 03 '25 18:12 Ivorforce

Did you use the Tracy Gdextension?

Yes https://github.com/Ryan-000/godot_tracy

Ryan-000 avatar Dec 03 '25 21:12 Ryan-000

Aha, that should explain it. The tracy GDExtension is, well, a GDExtension. It's possible that the hot reload didn't work well with how tracy's / the extension's assumptions. Godot's integration is in core, and does not use the GDExtension system. As such, I don't think it will affect whether GDExtensions can reload or not. But thanks for reporting, we'll keep an eye on it!

Ivorforce avatar Dec 03 '25 21:12 Ivorforce

Oh my bad, I misinterpreted your question. I actually had it compiled as a custom module, not as GDExtension.

Ryan-000 avatar Dec 03 '25 21:12 Ryan-000

To make line numbers show up correctly for tracy, these two checkboxes in the player settings need to be checked: Screenshot 2025-12-08 at 12 51 00

This should be in the docs, too.

AdriaandeJongh avatar Dec 08 '25 11:12 AdriaandeJongh

To make line numbers show up correctly for tracy, these two checkboxes in the player settings need to be checked:

Let's save this bit for a follow-up. I'd really like to get the simplest "getting started" steps merged in this PR, and then it can be built upon

dsnopek avatar Dec 09 '25 16:12 dsnopek

Let's save this bit for a follow-up. I'd really like to get the simplest "getting started" steps merged in this PR, and then it can be built upon.

I tend to agree with this approach, but it’s very easy to add now, and without it, it will lead to issue reports. it makes the GDScript tracy implementation seem broken.

AdriaandeJongh avatar Dec 09 '25 16:12 AdriaandeJongh

Thanks!

akien-mga avatar Dec 09 '25 17:12 akien-mga