Automatic eviction only ever covered disconnected live instances (_evict_disconnected_idle explicitly skipped anything with a path), so a file-loaded capture -- potentially many GB -- stayed resident forever until the TRACY_MCP_MAX_INSTANCES cap forced an LRU eviction to make room. list_instances already documented "unload_capture instead of waiting for automatic eviction" as the alternative, but no automatic path actually existed for this case. Generalizes the sweep into _evict_idle: file-loaded instances now get their own idle-since-last-use TTL (TRACY_MCP_FILE_IDLE_TTL_S, default 1800s matching the disconnected-live TTL). Safe to evict on a timer since they're already durably on disk -- load_capture brings them back. Connected live instances are untouched, same as before.
Tracy Profiler
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.
- Documentation for usage and build process instructions
- Releases containing the documentation (
tracy.pdf) and compiled Windows x64 binaries (Tracy-<version>.7z) as assets - Changelog
- Interactive demo
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



