Commit Graph

6147 Commits

Author SHA1 Message Date
Bartosz Taudul
d8d6423266 Context switch samples counting. 2021-11-13 02:47:39 +01:00
Bartosz Taudul
8ef212c26e Determine if postponed callstacks are for context switches.
Samples are processed only when new context switch data has been received.
2021-11-13 02:44:54 +01:00
Bartosz Taudul
745b795d50 Detect context switch callstack samples.
Context switch callstack samples are not included in the sampling data
statistics (as these don't represent random sampling), but are rather put into
a separate dedicated data structure.

For this to work, a complete context switch data has to be available for the
callstack timestamp. There is no guarantee it will be present at the time it
is needed, so a second structure is added to allow postponing qualification of
callstacks.
2021-11-13 02:40:32 +01:00
Bartosz Taudul
5b799e0e45 Monitor when new context switch data is received. 2021-11-13 02:38:33 +01:00
Bartosz Taudul
00834ed32b No need to pass time and callstack. 2021-11-13 02:26:11 +01:00
Bartosz Taudul
06c1bb4e59 Open callstack windows when clicking on context switch. 2021-11-13 01:34:49 +01:00
Bartosz Taudul
4b74777fcf Display image name in callstack tooltips. 2021-11-13 01:31:28 +01:00
Bartosz Taudul
1200409a44 Display context switch wait call stack. 2021-11-13 01:21:47 +01:00
Bartosz Taudul
ce8e42f00b Separate drawing callstack tooltip from drawing its contents. 2021-11-13 01:08:36 +01:00
Bartosz Taudul
aed1360a9c Update to MSVC 2022. 2021-11-13 00:49:26 +01:00
Bartosz Taudul
97c519811c Capture context switch call stacks on Windows. 2021-11-12 12:22:29 +01:00
Bartosz Taudul
987f70a9d4 Signal initialization failure through exit code. 2021-11-11 12:43:59 +01:00
Bartosz Taudul
f925da5e01 Handle fiber enter -> enter case (without leave in between). 2021-11-06 21:14:37 +01:00
Bartosz Taudul
d33de972f0 Properly show fiber context switch data. 2021-11-06 21:06:08 +01:00
Bartosz Taudul
40cd5435df Fix context switch reconstruction condition. 2021-11-06 20:49:15 +01:00
Bartosz Taudul
69e5cf796d Construct faux context switch data from fiber events. 2021-11-06 20:38:16 +01:00
Bartosz Taudul
efeed326bf Context switch data may exists without CPU data. 2021-11-06 20:22:08 +01:00
Bartosz Taudul
904a444ea5 Label fiber threads across the UI. 2021-11-06 19:27:36 +01:00
Bartosz Taudul
0075050679 Allow checking if thread is a fiber. 2021-11-06 19:02:02 +01:00
Bartosz Taudul
3ede2a1345 Explicit tracking of fiber state in ThreadData.
This replaces the use of hard-to-track global state with well-defined accessor
functionality.
2021-11-06 18:55:29 +01:00
Bartosz Taudul
765561de81 Serialize continuous frame events. 2021-11-05 01:13:24 +01:00
Bartosz Taudul
0427904d4a Fix zone validation thread piggybacking. 2021-11-04 22:50:55 +01:00
Bartosz Taudul
373a6fc19e Add event debug routine. 2021-11-04 22:30:16 +01:00
Bartosz Taudul
4c774130ee Allow direct switching from one fiber to another. 2021-11-04 17:51:32 +01:00
Bartosz Taudul
5782d8a53b Merge pull request #277 from napoleon89/callstack_undefined_parameters
Added unused parameters when TRACY_HAS_CALLSTACK is undefined
2021-11-04 17:01:28 +01:00
Nathan Day
4fece233d9 Added unused parameters when TRACY_HAS_CALLSTACK is undefined 2021-11-04 15:24:58 +00:00
Bartosz Taudul
b3dd3612f4 Merge pull request #276 from alexanderbock/patch-1
Removing explicit compiler define check for GL_TIMESTAMP
2021-11-04 11:34:31 +01:00
Alexander Bock
f7fb2af5c2 Update TracyOpenGL.hpp
Removing explicit GL_TIMESTAMP check
2021-11-04 10:46:13 +01:00
Bartosz Taudul
887826a28a Remove dead code. 2021-11-03 18:58:53 +01:00
Bartosz Taudul
fceb065329 Fiber name transport. 2021-11-03 18:57:30 +01:00
Bartosz Taudul
211b202d8e Process fiber entry and leave events. 2021-11-02 01:53:10 +01:00
Bartosz Taudul
b4e4c05088 Thread context data may be invalidated due to fibers. 2021-11-02 01:52:41 +01:00
Bartosz Taudul
d522af99b9 Threads may be mapped to fibers. 2021-11-02 01:51:54 +01:00
Bartosz Taudul
0718330016 Add fiber labels to places with thread information. 2021-11-02 01:48:28 +01:00
Bartosz Taudul
e5c44afdcb Distinguish fiber threads with green color. 2021-11-02 01:48:07 +01:00
Bartosz Taudul
bb72bf10e9 Add fiber failures. 2021-11-02 01:47:31 +01:00
Bartosz Taudul
93b6d88c4c Save/load fiber thread flag. 2021-11-02 01:46:29 +01:00
Bartosz Taudul
8f44f1c68b Store fiber state is ThreadData. 2021-11-02 01:45:01 +01:00
Bartosz Taudul
229d547e91 Add fiber support on client side. 2021-11-02 00:11:09 +01:00
Bartosz Taudul
8b15cd049c Skip comparing known to be matching memory. 2021-10-30 01:26:31 +02:00
Bartosz Taudul
1ecdb8aa2a Report device name on Android. 2021-10-26 18:09:56 +02:00
Bartosz Taudul
1cbd6950cf Update NEWS. 2021-10-23 02:06:56 +02:00
Bartosz Taudul
bd108220cb Drain symbols queue if on-demand and not connected. 2021-10-23 01:54:38 +02:00
Bartosz Taudul
3d13ec7018 Pump symbols queue during profiler termination. 2021-10-23 01:47:04 +02:00
Bartosz Taudul
fe9c63b8d2 Signal symbol resolution thread destruction. 2021-10-23 01:46:00 +02:00
Bartosz Taudul
02ce9b7d8b Extract symbol queue item handling. 2021-10-23 01:35:01 +02:00
Bartosz Taudul
2b9265cc40 Move symbol resolution to a separate thread. 2021-10-22 22:25:09 +02:00
Bartosz Taudul
b4cfb1f2d5 Add SPSC symbol queue. 2021-10-22 22:22:27 +02:00
Bartosz Taudul
f2b0aadedc Return external names, instead of sending them.
Note that the old function is still used by code, so this commit won't
compile.
2021-10-22 22:20:30 +02:00
Bartosz Taudul
e2610b1483 Add space for piggy-backing symbol data transfer. 2021-10-22 22:17:09 +02:00