Tracy
Mer info
- Skapad av
- Bartosz Taudul
- Typ
- Profilerare
- Licens
- BSD 3-Clause
- Källkod
- github.com/wolfpld/tracy
En öppen profilerare för realtidsprogram som visar exakt vad varje tråd gjorde under varje bildruta, ner på nanosekunden.
Vanliga profilerare svarar på frågan "var går tiden i genomsnitt?". Spel har ett annat problem: 59 bildrutor av 60 håller budgeten och den sextionde hackar. Tracy instrumenteras med makron som ZoneScoped och FrameMark i koden, skickar händelserna över nätverket till ett separat visningsprogram och ritar en tidslinje per tråd, där den enskilda dåliga bildrutan går att zooma in på.
Utöver instrumenteringen samplar den anropsstackar, mäter GPU-tid via Vulkan, Direct3D och OpenGL, och spårar minnesallokeringar och lås. Den har blivit ett vanligt val i egna motorer och indiespel, där de kommersiella alternativen antingen kostar pengar eller bara finns för en plattform.