Bartosz Taudul b68fe43335 Keep context switch sample vectors sorted.
Context switch samples were appended in arrival order. Samples which
were postponed due to missing context switch data are replayed after
newer samples were already classified, so the vector could become
unordered. Everything that reads it assumes time order: the wait stacks
range filter, the sampling statistics percentage denominator, and the
context switch sample filters in the trace load jobs. In the load jobs
an unordered vector could silently disable the filtering for the rest
of a thread, reintroducing the context switch samples into the symbol
and child sample maps.

Use a SortedVector and restore the ordering at the points where it can
break: after the postponed sample replay and when saving a trace. The
save file version is bumped, so that the sort order check on load is
only performed for traces saved by previous versions.
2026-07-25 23:02:13 +02:00
2026-06-12 19:23:28 +02:00
2026-07-25 14:34:24 +02:00
2024-05-25 00:16:29 +02:00
2024-05-12 19:23:18 +02:00
2026-07-24 23:14:09 +02:00
2023-10-09 22:38:04 +02:00
2022-04-16 00:13:10 +02:00
2026-07-25 17:30:32 +02:00
2025-07-27 21:18:57 +02:00
2026-07-24 18:25:05 +02:00
2024-09-27 16:56:55 +02:00
2026-01-01 02:12:05 +01:00
2026-07-25 19:46:02 +02:00
2026-06-09 09:06:48 -07: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 graphics/compute APIs: OpenGL, Vulkan, Direct3D 11/12, Metal, OpenCL, CUDA, WebGPU.), 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 76 MiB
Languages
C++ 90%
C 5.3%
TeX 2.4%
Python 1.1%
CMake 0.6%
Other 0.4%