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
Bartosz Taudul
0b6e55ee87
Store fixed-width font in View.
2021-03-27 13:43:11 +01:00
Bartosz Taudul
d56f7dab09
Remove unneeded forward declarations.
2021-03-27 13:05:59 +01:00
Bartosz Taudul
35267abc8e
Remove obsolete GetZoneDepth() method.
2021-02-07 19:58:23 +01:00
Bartosz Taudul
6bb77d55a1
Use tables in CPU data view.
2020-12-09 21:53:36 +01:00
Bartosz Taudul
63e0170048
Find zones zone list fixes.
2020-12-09 21:18:40 +01:00
Bartosz Taudul
f1a641a838
Use tables for instrumented zones statistics.
2020-12-09 20:55:00 +01:00
Bartosz Taudul
6300f59183
Use tables in find zone zones list.
2020-12-09 02:18:06 +01:00
Bartosz Taudul
c437ecfcf5
Remove unneeded variable.
2020-12-08 19:55:20 +01:00
Bartosz Taudul
53eacd3dc2
Add lost connection popup.
2020-11-18 01:24:22 +01:00
Bartosz Taudul
2bf00b5eab
Get available physical memory size in viewer.
2020-11-13 17:09:57 +01:00
Bartosz Taudul
a48d540854
Cache statistics range-limited data.
2020-11-01 16:24:08 +01:00
Bartosz Taudul
00c9dd24dc
Use last range mode if no frames are available.
...
If during the first 5 seconds of the trace there are no frames being reported,
the profiler will switch to following last 5 seconds of the trace, instead of
displaying three last frames.
2020-10-06 18:46:36 +02:00
Bartosz Taudul
5af7f6ea0b
Add memory pool selector to zone info window.
2020-10-06 01:32:03 +02:00
Bartosz Taudul
b6724bec3a
Ports are uint16_t.
2020-10-02 18:51:54 +02:00
Bartosz Taudul
4791b63ef8
Use int64_t for time.
2020-10-02 18:37:15 +02:00
Bartosz Taudul
ae14e7a879
Expose custom memory pools in the UI.
2020-09-25 17:51:05 +02:00
Bartosz Taudul
812f869669
Decouple zoom level from tracking last events.
2020-09-12 15:49:41 +02:00
Bartosz Taudul
4ac0e7d955
Allow filtering sampling results by image name.
2020-08-21 14:23:23 +02:00
Bartosz Taudul
a3d8b5d225
Allow running specific tasks on main thread.
2020-08-15 14:59:16 +02:00
Bartosz Taudul
85f54499fe
Add range limit UI to symbol view.
2020-08-10 12:11:07 +02:00
Bartosz Taudul
251e8f1fe2
Fix vertical panning.
2020-08-05 17:20:19 +02:00
Bartosz Taudul
2acc1d9670
Move Range, RangeSlim out of View.
2020-08-04 17:09:17 +02:00
Bartosz Taudul
68e452802b
Allow performing range copies from one to another.
2020-08-04 17:06:24 +02:00
Bartosz Taudul
bd51add4f1
Display zone range popup area.
2020-08-04 17:06:24 +02:00
Bartosz Taudul
1e526cfc09
Extract range entry drawing.
2020-08-04 14:20:35 +02:00
Bartosz Taudul
9449f3ef89
Add time range limit UI to statistics menu.
2020-08-04 14:15:28 +02:00
Bartosz Taudul
1215eb4de5
Allow limiting find zone time range to a frame.
2020-07-31 17:50:12 +02:00
Bartosz Taudul
8091207d26
Add time limit ranges window.
2020-07-31 16:37:47 +02:00
Bartosz Taudul
9633617810
Don't change time range limit when enabling it.
2020-07-31 16:19:35 +02:00
Bartosz Taudul
0d2914bbe8
Display thumbnail of current frame image in connection popup.
2020-07-30 01:58:08 +02:00
Bartosz Taudul
f367b16dc0
Add missing operator.
2020-07-29 19:13:10 +02:00
Bartosz Taudul
58428e7ede
Dynamically adapt find zone results to range limit.
2020-07-29 18:48:49 +02:00
Bartosz Taudul
c1bf853310
Drag range boundary to change its span.
2020-07-29 18:42:53 +02:00
Bartosz Taudul
2f5f2e5b1d
Add range boundary highlight.
2020-07-29 18:42:52 +02:00
Bartosz Taudul
ff5daf9df7
Proper handling of mouse over timeline view.
...
This fixes:
- Dead zones between header, frame sets and the rest of timeline
display.
- One-frame frame set position lag when panning the view with mouse over
zones region of timeline.
2020-07-29 17:52:51 +02:00
Bartosz Taudul
fd5ccc16d6
Extract find zone range data to a separate struct.
2020-07-28 15:12:45 +02:00
Bartosz Taudul
420bdd5854
Don't recalculate message list every frame.
2020-07-12 15:26:05 +02:00
Bartosz Taudul
333e10c724
Move message line drawing to a separate function.
2020-07-12 15:07:43 +02:00
Bartosz Taudul
925bf7e638
Implement grouping zones by zone name.
2020-07-04 12:36:04 +02:00
Bartosz Taudul
d1ef8ea90b
Set owner of file dialogs on windows.
2020-06-10 01:52:17 +02:00
Bartosz Taudul
7ce915c4f6
Allow display of symbol address in statistics view.
2020-05-30 15:39:34 +02:00
Bartosz Taudul
74a79a6921
Add zone child time getter with clamping to time range.
2020-05-25 01:14:44 +02:00
Bartosz Taudul
d3b60f913d
Extend "first frame" time.
2020-05-23 16:52:58 +02:00
Bartosz Taudul
0b900c0a3c
Add crash popup.
2020-05-23 16:40:15 +02:00
Bartosz Taudul
fdd50840a7
Add a function for showing sample parents.
2020-05-10 16:07:45 +02:00
Bartosz Taudul
70818b49b9
Force connection popup boolean should decay.
2020-05-08 01:49:15 +02:00
Bartosz Taudul
15454d2253
Select microarchitecture basing on cpuid.
2020-05-07 00:53:31 +02:00
Bartosz Taudul
9d94cdbb52
Parametrize color highlighting.
2020-05-03 14:33:47 +02:00
Bartosz Taudul
b69bf49082
Separate thread context data getter.
2020-05-03 14:21:27 +02:00
Bartosz Taudul
222d3d661e
Change "go to frame" window to popup.
2020-05-03 13:54:37 +02:00
Bartosz Taudul
78a56640c3
Open connection popup when a connection is established.
2020-04-25 13:14:27 +02:00
Bartosz Taudul
91ad77d86a
Save/load source substitutions.
2020-04-18 14:25:04 +02:00
Bartosz Taudul
01d7fefe52
Perform source file name substitution.
2020-04-17 19:28:39 +02:00
Bartosz Taudul
47cfb4ae35
Expose source substitution interface.
2020-04-17 19:28:39 +02:00
Bartosz Taudul
5f22e35c26
Add UI for source location substitutions.
2020-04-17 19:28:39 +02:00
Bartosz Taudul
b8647f968a
Don't animate threads on first frame.
2020-04-12 23:41:18 +02:00
Bartosz Taudul
1e965edb54
Don't separate inlines by default.
2020-04-09 19:44:42 +02:00
Bartosz Taudul
fe98921e4c
Add UI for disabling inlines in sample statistics.
2020-04-08 15:52:53 +02:00
Bartosz Taudul
a7fffe7e13
Separate opening source and symbol views.
2020-04-08 02:12:09 +02:00
Bartosz Taudul
b957087456
Add "smart" symbol location to sampled statistics.
2020-03-30 23:58:42 +02:00
Bartosz Taudul
44096dfcf2
Move DrawTextContrast() to TracyImGui.hpp.
2020-03-30 22:39:34 +02:00
Bartosz Taudul
48e4d33bea
Support call stacks longer than 255 entries.
2020-03-28 18:04:33 +01:00
Bartosz Taudul
78ea40d70c
Check for asm/source availability in SetTextEditorFile.
2020-03-27 21:46:57 +01:00
Bartosz Taudul
45b8622bc9
Search for base address when if symbol address is inlined.
2020-03-27 21:04:23 +01:00