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
Bartosz Taudul
720ed0460b
Differentiate between symbol and base address.
2020-03-27 17:59:16 +01:00
Bartosz Taudul
7018caadb9
Add UI for control of displaying all symbols.
2020-03-26 22:39:16 +01:00
Bartosz Taudul
b091c0d4a8
Hide unknown symbols by default in sample statistics.
2020-03-25 23:44:48 +01:00
Bartosz Taudul
4c92a2619f
Pass symbol address to source view.
2020-03-25 00:07:31 +01:00
Bartosz Taudul
9672dba765
Replace source file viewer with one that actually works.
...
This is much simpler, custom implementation of a text file viewer. It is
able to perform these two tasks as intended:
- center source view on the selected line,
- highlight that line.
2020-03-22 20:53:59 +01:00
Bartosz Taudul
ac84e77333
Ghost zones display prototype.
2020-03-19 00:35:18 +01:00
Bartosz Taudul
77d30adee9
Add per-thread ghost zones switch.
2020-03-19 00:35:18 +01:00
Bartosz Taudul
9668234903
Allow requesting reconnect on trace discard.
2020-03-06 22:11:17 +01:00
Bartosz Taudul
d25614d50f
Allow address/port retrieval from View.
2020-03-06 22:11:00 +01:00
Bartosz Taudul
9b53792f20
Add call stack sample parents window.
2020-02-29 18:59:01 +01:00
Bartosz Taudul
5f48f8a3aa
Allow hiding symbols with unknown location.
2020-02-27 19:45:41 +01:00
Bartosz Taudul
bc18862dc6
Allow displaying instruction location.
2020-02-27 15:10:50 +01:00
Bartosz Taudul
17e7add105
By default show self times in statistics menu.
2020-02-27 14:20:19 +01:00
Bartosz Taudul
374ddbe2a6
Replace tabs with radio buttons.
2020-02-27 12:24:28 +01:00
Bartosz Taudul
27466fc56b
Add callstack sampling statistics.
2020-02-27 02:08:20 +01:00
Bartosz Taudul
02c99fca67
Enable display of symbol address in callstack window.
2020-02-26 19:16:27 +01:00
Bartosz Taudul
2e3b13ced5
Optional frame image display in messages list.
2020-02-24 01:29:57 +01:00
Bartosz Taudul
d4f9810006
Draw callstack sample data.
2020-02-22 18:52:38 +01:00
Bartosz Taudul
dd650e08ec
Display saved trace size.
2020-02-08 13:07:02 +01:00
Bartosz Taudul
0bb6162a01
Allow sorting memory data listings.
2020-02-05 17:08:41 +01:00
Bartosz Taudul
d680fa6cd6
Clip memory allocation lists.
2020-01-31 19:18:20 +01:00
Bartosz Taudul
9a5104dacf
Extract and pass a value, which will be changing.
2020-01-30 01:57:49 +01:00
Bartosz Taudul
022528bb47
Use Martin Ankerl's robin hood unordered map.
...
ska::flat_hash_map has bugs and its development is dead.
2020-01-28 21:49:36 +01:00
Bartosz Taudul
ea424a4c8d
Use custom vector.
2020-01-20 23:58:36 +01:00
Bartosz Taudul
6de489a34f
Use flat_hash_map for groups.
2020-01-20 23:43:10 +01:00
Bartosz Taudul
6358b4588d
Preserve groups order.
2020-01-20 23:40:07 +01:00