Commit Graph

586 Commits

Author SHA1 Message Date
Bartosz Taudul
edad2d7e35 Monitor send queue size. 2022-07-03 14:52:18 +02:00
Bartosz Taudul
2331ee04d2 Cleanup TracyView includes. 2022-07-02 17:00:08 +02:00
Bartosz Taudul
d9ce848bb0 Also extract (and rename) timeline mouse handling. 2022-07-02 15:42:01 +02:00
Bartosz Taudul
9fb618c12d Rename DrawZone* -> DrawTimeline*. 2022-07-02 15:38:10 +02:00
Bartosz Taudul
0d41a6c48b Move DrawHistogramMinMaxLabel() to TracyImGui.cpp. 2022-07-02 15:27:08 +02:00
Bartosz Taudul
c427214f46 Move DrawHelpMarker to TracyImGui.hpp. 2022-07-02 15:07:40 +02:00
Bartosz Taudul
f3fe8b27e8 Extract plot drawing from View. 2022-07-02 14:36:54 +02:00
Bartosz Taudul
c9f77ee5fa Move zone info UI out of View. 2022-07-02 13:37:04 +02:00
Bartosz Taudul
b602d61944 Extract options UI from View. 2022-07-02 13:23:52 +02:00
Bartosz Taudul
d19b337573 Split View navigation functions. 2022-07-02 13:16:06 +02:00
Bartosz Taudul
2473760c04 Extract Find Zone UI to a separate file. 2022-07-02 13:12:29 +02:00
thedmd
9ed9e18bc8 Add ability to filter callstacks in memory tab by inactive allocations.
Filtering by inactive allocations helps to pin point wasteful allocations
in an app.
2022-06-06 06:45:35 +02:00
Bartosz Taudul
1e762c246a Don't show callstack column in messages, if no callstacks. 2022-04-18 15:06:23 +02:00
Bartosz Taudul
f17a579753 Move adding annotations to a separate function. 2022-03-15 17:25:28 +01:00
Bartosz Taudul
f4043d9bb8 Display GPU zone statistics. 2022-01-29 15:35:25 +01:00
Bartosz Taudul
563daed10f Add bottom/top tree to callstack parents. 2021-12-31 15:01:06 +01:00
Bartosz Taudul
04f045b22b Replace "restrict time" with time range limits in memory. 2021-11-29 19:20:56 +01:00
Bartosz Taudul
de11604910 Add memory time range limit UI. 2021-11-29 18:17:19 +01:00
Bartosz Taudul
52eeddd63a Fix display of entry call stacks when inlines are present. 2021-11-27 16:41:27 +01:00
Bartosz Taudul
902de497dc Allow forceful insertion into main thread queue.
This is useful to run some tasks outside of the main render job.
2021-11-18 22:46:59 +01:00
Bartosz Taudul
89ca010146 Add scale setup callback infrastructure. 2021-11-18 22:22:11 +01:00
Bartosz Taudul
633cd1262c Draw callstack tree for wait stacks. 2021-11-13 22:06:04 +01:00
Bartosz Taudul
5f9a0ab61f Wait stacks mode selection. 2021-11-13 22:06:04 +01:00
Bartosz Taudul
4f6e9bbb65 Generic callstack tree builder.
Previously this was exclusive for memory callstacks.
2021-11-13 22:06:04 +01:00
Bartosz Taudul
c6be16dcd2 Rename PathData -> MemPathData. 2021-11-13 21:28:56 +01:00
Bartosz Taudul
a2547ccf1d Rename CallstackFrameTree -> MemCallstackFrameTree. 2021-11-13 21:26:28 +01:00
Bartosz Taudul
0c7c3ae641 Time range limits for wait stacks. 2021-11-13 18:43:55 +01:00
Bartosz Taudul
94d4272c9c Allow limiting wait stacks to certain threads. 2021-11-13 18:20:06 +01:00
Bartosz Taudul
9ba5180b04 Add wait stacks window. 2021-11-13 15:58:25 +01:00
Bartosz Taudul
45df37e3a9 Separate callstack table drawing functionality. 2021-11-13 15:56:57 +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
d33de972f0 Properly show fiber context switch data. 2021-11-06 21:06:08 +01:00
xavier
61670e30aa Update samples statistics continuously in the "find zone" window 2021-09-23 21:03:56 +02:00
xavier
63acfe72e7 Apply group filters to the samples statistics in the "find zone" window
reduce memory by storing the thread ids next to the zones intead of
making zone lists per thread.

speed-up by reading the zones in linear order rather than bisecting
the whole list for each sample.
2021-09-23 21:03:56 +02:00
xavier
41130d2a69 Avoid useless work when there aren't any samples 2021-09-23 21:03:56 +02:00
xavier
0089c832f7 Cache samples statistics in the "find zone" window 2021-09-23 21:03:56 +02:00
xavier
ed42c2388c Add samples statistics to the "find zone" window 2021-09-23 21:03:56 +02:00
xavier
6b901a7156 Extract DrawSamplesStatistics() 2021-09-23 21:03:56 +02:00
Bartosz Taudul
c82bf3915b Extend thread expansion grace period to half a second.
Previously a framerate-dependent 10 frame count was used.
2021-08-19 00:24:11 +02:00
Terence Rokop
b392671a7a Make time accumulation mode use combo box 2021-06-25 21:27:45 -07:00
Terence Rokop
9366e58d12 Introduce "Non-reentrant time" radio button
Add to the statistics view an option for "Non-reentrant
time", which displays the count of and time spent in zone
events which were the only appearances (at that time) of
their zones on their threads' stacks.

Besides the GUI changes, this involves:

- Introducing a tri-state accumulation mode to replace the
boolean "self time":  now there's "Self time only",
"Child time", and "Non-reentrant time".

- Removing the separate "selfTotal" from SrcLocZonesSlim,
making "total" represent whichever of the now three options
is active, which in turn requires keeping track of the
accumulation mode in StatisticsCache and invalidating that
cache when the accumulation mode changes.
2021-06-20 17:56:15 -07:00
Terence Rokop
0a8ec09566 Introduce View::IsZoneReentry()
These two methods can search a timeline to determine whether
a given ZoneEvent is the only appearance of the given zone
on the current thread stack, or a re-entry.
2021-06-20 17:53:38 -07:00
Bartosz Taudul
5d86002f82 Calculate all CPU usage values in one go. 2021-06-20 14:19:18 +02:00
Bartosz Taudul
188320db48 Simplify zone color data retrieval. 2021-06-19 16:20:35 +02:00
Bartosz Taudul
d2ebe341f2 Allow filtering out kernel symbols from statistics view. 2021-06-16 01:43:09 +02:00
Kevin Kuehler
871d41be1f Implement FindMatchingZone(..)
Sets m_compare to the matched index. It supports multiple flags. It can
be run by comparing function name, source file, line number, and any
combination thereof. When searching for a match, we do 3 runs, quitting
out if any of them succeed.

  1. Look for zone with same function same, source file, line number.
  2. Look for zone with same function same, source file.
  3. Look for zone with same function same.
2021-05-22 01:33:06 -07:00
Bartosz Taudul
3d75bf653a Add interface for frame images dict building. 2021-05-15 15:50:20 +02:00
Bartosz Taudul
92ae003308 Improve trace saving experience.
This adds additional dialog, which allows selection of compression mode. Also,
when a trace cannot be saved, a failure popup will be displayed.
2021-05-15 14:25:45 +02:00
Bartosz Taudul
8f0c5e867e Source tooltip implementation. 2021-03-27 13:43:11 +01:00