Clément Grégoire df76b376a7 Thread wakeup visualization
This PR does the following things:
- Allow to lock the highlighted thread using left mouse click or lane popup menu
- Add more descriptions for wait reasons in View::DecodeContextSwitchReason
- Stores the Wakeup CPU so that we may display it in the CPU data view
- `QueueThreadWakeup` now contains cpu and adjust info (currently unused). Fits in the padding, no struct size change.
- `QueueContextSwitch` now also contains thread priorities information (windows+linux) and CState (windows), but currently unused by the profiler. Fits in the padding, no struct size change.
- Fixes Linux `EventWakeup` which tries to remove PERF_SAMPLE_CALLCHAIN on the wrong member. Set the whole `perf_event_attr` explicitely instead.
- Fixes Windows ReadyThread event being dropped if triggered before the thread switches out (this is confirmed to be normal behaviour, probably due to thread being switched out but context switch actually happening later)
- Bumps tracy file version and protocol versions
2025-04-08 11:02:27 +02:00
2025-02-21 23:27:15 +01:00
2024-05-25 00:16:29 +02:00
2024-05-12 19:23:18 +02:00
2023-10-09 22:38:04 +02:00
2022-04-16 00:13:10 +02:00
2023-10-09 23:14:55 +02:00
2025-04-08 11:02:27 +02:00
2025-04-08 11:02:27 +02:00
2025-01-28 15:23:52 -08:00
2025-04-08 11:02:27 +02:00
2024-10-21 18:22:22 +02:00
2024-07-19 18:17:22 +02:00
2024-07-12 17:13:16 +02:00
2024-09-27 16:56:55 +02:00
2025-02-18 23:38:25 +01:00
2025-01-01 05:50:07 -05:00
2025-02-19 09:36:55 +01:00
2024-02-11 17:26:48 +01:00

Tracy Profiler

Sponsor

A real time, nanosecond resolution, remote telemetry, hybrid frame and sampling profiler for games and other applications.

Tracy supports profiling CPU (Direct support is provided for C, C++, Lua, Python and Fortran integration. At the same time, third-party bindings to many other languages exist on the internet, such as Rust, Zig, C#, OCaml, Odin, etc.), GPU (All major graphic APIs: OpenGL, Vulkan, Direct3D 11/12, Metal, OpenCL.), memory allocations, locks, context switches, automatically attribute screenshots to captured frames, and much more.

An Introduction to Tracy Profiler in C++ - Marcos Slomp - CppCon 2023

Introduction to Tracy Profiler v0.2
New features in Tracy Profiler v0.3
New features in Tracy Profiler v0.4
New features in Tracy Profiler v0.5
New features in Tracy Profiler v0.6
New features in Tracy Profiler v0.7
New features in Tracy Profiler v0.8

Description
No description provided
Readme BSD-3-Clause 104 MiB
Languages
C++ 89.8%
C 5.4%
TeX 2.4%
Python 1.1%
CMake 0.7%
Other 0.3%