Bartosz Taudul
5955efabb0
Use combo box for smart/entry/sample location selection.
2020-05-30 15:39:34 +02:00
jmanc3
e22ece8e79
Added support for horizontal scrolling.
2020-05-27 21:11:49 -05:00
Bartosz Taudul
54a029356d
Explicitly store GPU context type.
2020-05-27 18:16:53 +02:00
Bartosz Taudul
898a10ef82
Display base function is symbol as '[ - self - ]'.
2020-05-25 21:42:01 +02:00
Bartosz Taudul
bdba77c0f5
Allow displaying self zone time in frames overview.
2020-05-25 01:15:06 +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
ee22cf3b0c
Use cached source files.
2020-05-23 15:44:19 +02:00
Bartosz Taudul
97a5957adc
Display source file cache stats.
2020-05-23 15:44:19 +02:00
Bartosz Taudul
619523b43e
Symbol might not have ip statistics.
2020-05-21 19:20:20 +02:00
Bartosz Taudul
e9c13b254b
Get exclusive samples count for a proper symbol.
...
If inlines are grouped under a base symbol, the base symbol data
includes all the inline sample counts. This was interfering with control
logic determining if sample parents window can be displayed.
2020-05-19 19:10:40 +02:00
Bartosz Taudul
e376866436
Check for exclusive samples in inlined symbols list.
2020-05-19 19:06:01 +02:00
Bartosz Taudul
883264c0df
Fix typo.
2020-05-18 18:25:49 +02:00
Bartosz Taudul
f9ff6f4161
Clamping is not needed.
2020-05-15 02:30:52 +02:00
Bartosz Taudul
f6663b187a
Add ghost zone label to ghost zone tooltips.
2020-05-15 02:27:48 +02:00
Bartosz Taudul
ad3cac8578
Incorporate thread colors in ghost zones.
2020-05-15 02:25:28 +02:00
Bartosz Taudul
992fba7e07
Move profiler FPS display to upper-right corner.
2020-05-14 17:53:46 +02:00
Bartosz Taudul
7ea9c4baf2
Proper locking for queue/in-flight queries.
2020-05-13 18:52:20 +02:00
Bartosz Taudul
d84495d0e1
Mark inline symbols.
2020-05-10 16:13:19 +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
2da6c6b6f5
Fix enforced connection popup position wrt viewports.
2020-05-07 15:27:11 +02:00
Bartosz Taudul
15454d2253
Select microarchitecture basing on cpuid.
2020-05-07 00:53:31 +02:00
Bartosz Taudul
eab3adfa1d
Display CPU info.
2020-05-06 19:18:17 +02:00
ikrima
1b5879e176
ImGui Multiviewport fixes
...
- set ImGuiConfigFlags_ViewportsEnable
- correct render loop logic with viewport api calls, SetNextWindowViewport(), UpdatePlatformWindows(), RenderPlatformWindowsDefault()
- Fix: coords in abs space now, SetNextWindowPos()
NOTE:
- I have viewports turned on by default so you can easy test (comment out io.ConfigFlags |= ImGuiConfigFlags_ViewportsEnable; and you get old behavior)
- Jankiness with multiviewports isn't bc perf hit; it's bc profiler reduces it's tick rate when it's not in focus. So, that bit of logic needs to be updated if you really care
- I haven't encountered any issues over past week but discount that by 50% since i'm new to tracy. No promises some UI wasn't regresssed
- Key things to watch out for is enabling viewports turns ImGui into using absolute monitor coords instead of window coords (ie SetPosition(0,0) => monitor top left, not window top/left
2020-05-04 02:17:15 -07:00
Bartosz Taudul
d99129f0e4
Move ToggleButton() out of TracyView.cpp.
2020-05-03 20:40:53 +02:00
Bartosz Taudul
88b2b04b0d
Display running threads in CPU usage tooltip.
2020-05-03 14:34:22 +02:00
Bartosz Taudul
fb801fa484
Extract time value at mouse cursor to a variable.
2020-05-03 14:34:05 +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
d4e490f47e
Keep frames graph at the top of the window (not in dock space).
2020-05-03 13:30:05 +02:00
Bartosz Taudul
bb043f96ee
Use internal NoTabBar flag for central node.
2020-05-03 13:29:51 +02:00
Bartosz Taudul
e3acb635a3
Tune up work area window padding.
2020-05-03 13:27:58 +02:00
Bartosz Taudul
32aa23822b
Disable docking in central node.
2020-05-03 13:23:48 +02:00
Bartosz Taudul
3350a78cd8
Put work area in center docking node.
2020-05-03 13:23:26 +02:00
Bartosz Taudul
73fda0b188
Disable docking in the main window.
2020-05-03 13:21:34 +02:00
Bartosz Taudul
a40ba8f4e9
Switch query queue icon to satellite dish.
2020-04-30 18:41:08 +02:00
Bartosz Taudul
78a56640c3
Open connection popup when a connection is established.
2020-04-25 13:14:27 +02:00
Bartosz Taudul
747f26ef74
Display used CPUs as range, if possible.
2020-04-24 02:02:16 +02:00
Bartosz Taudul
170aeea864
Remove CPU topology tooltip from zone info window.
2020-04-24 01:44:25 +02:00
Bartosz Taudul
91ad77d86a
Save/load source substitutions.
2020-04-18 14:25:04 +02:00
Bartosz Taudul
7a6bc6f554
Substitute source file names in source view.
2020-04-17 19:28:39 +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
2d25e969e9
Fix time span indicators visual jitter.
2020-04-13 15:00:54 +02:00
Bartosz Taudul
a2c4f8c2d1
Prominently expose profiler memory usage.
2020-04-13 14:41:05 +02:00
Bartosz Taudul
b8647f968a
Don't animate threads on first frame.
2020-04-12 23:41:18 +02:00
Bartosz Taudul
5fd5091efd
Fix handling of unknown symbols.
2020-04-12 23:18:38 +02:00
Bartosz Taudul
3398c969ac
Disable scrollbar for source view window.
2020-04-12 17:11:51 +02:00
Bartosz Taudul
c4bddf59e2
Allow access to sampling data before instrumentation is ready.
2020-04-11 18:21:46 +02:00
Bartosz Taudul
f0c7a751c1
Context-sensitive auto-selection of stats mode in source view.
2020-04-09 22:37:49 +02:00
Bartosz Taudul
b353e8752d
Display inlined function stats within symbols.
2020-04-08 19:09:47 +02:00
Bartosz Taudul
b05625d444
Display count of inlined functions in symbols.
2020-04-08 17:17:45 +02:00
Bartosz Taudul
51d5ef5b4e
Allow merging inlined function stats into base symbol.
2020-04-08 17:12:15 +02:00
Bartosz Taudul
02e1a7669c
Add offset-less GetSymbolForAddress().
2020-04-08 16:55:49 +02:00
Bartosz Taudul
a34cfacb5c
Stabilize symbol sorting.
2020-04-08 15:55:34 +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
b2c2bfc2aa
Move HSV color conversion to a separate source file.
2020-04-02 01:04:59 +02:00
Bartosz Taudul
6392e4d38d
Display number of received code locations.
2020-04-02 00:00:46 +02:00
Bartosz Taudul
b6ce693ede
Include inline parents when filtering sample statistics.
2020-04-01 13:24:32 +02:00
Bartosz Taudul
0f2095f84a
Add missing break.
2020-04-01 13:10:26 +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
6fe5d0575f
Add parent symbol for inlined symbols in sampled statistics.
2020-03-30 02:50:34 +02:00
Bartosz Taudul
48e4d33bea
Support call stacks longer than 255 entries.
2020-03-28 18:04:33 +01:00
Bartosz Taudul
28db0f6227
Wait for data to be ready.
2020-03-28 01:17:35 +01:00
Bartosz Taudul
fd3b9ca1e5
No need to format string.
2020-03-27 23:59:09 +01:00
Bartosz Taudul
5675044443
Display image name, if source file is unknown.
2020-03-27 21:54:40 +01:00
Bartosz Taudul
d065d28244
Allow assembly view in all calls to SetTextEditorFile.
2020-03-27 21:46:57 +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
31a1517d2f
Display disassembly of inlined symbols.
2020-03-27 17:59:41 +01:00
Bartosz Taudul
720ed0460b
Differentiate between symbol and base address.
2020-03-27 17:59:16 +01:00
Bartosz Taudul
52a853b26f
Don't show invalid contents warning for disassembly.
2020-03-27 17:14:46 +01:00
Bartosz Taudul
51bae7855d
Display number of in-flight queries.
2020-03-27 02:00:26 +01:00
Bartosz Taudul
089681267f
Allow viewing assembly without corresponding source code.
2020-03-27 01:47:06 +01:00
Bartosz Taudul
2a54f2df5d
Reverse the fileselector compile option.
2020-03-26 23:11:26 +01:00
Bartosz Taudul
d495431f24
Reverse the root window compile option.
2020-03-26 23:08:29 +01:00
Bartosz Taudul
58bb5d40c5
Remove support for non-extended font builds.
2020-03-26 23:04:44 +01:00
Bartosz Taudul
c098a03d8f
Implement listing all symbols.
2020-03-26 22:39:16 +01:00
Bartosz Taudul
e58b9e870e
Use explicit data structure to store symbol list data.
2020-03-26 22:39:16 +01:00
Bartosz Taudul
7018caadb9
Add UI for control of displaying all symbols.
2020-03-26 22:39:16 +01:00
Bartosz Taudul
696c351e6a
Allow listing symbols, even if no sampling data has been gathered.
2020-03-26 22:39:16 +01:00
Bartosz Taudul
e6b0bfc90d
Display "no entries" message in statistics menu, if appropriate.
2020-03-26 22:39:16 +01:00
Bartosz Taudul
ef96ecd9b8
Use shorter descriptions.
2020-03-26 22:09:56 +01:00
Bartosz Taudul
6a96b5f1dc
Use better wording.
2020-03-26 02:18:24 +01:00
Bartosz Taudul
3e134cdce5
Disassemble symbol code fragments.
2020-03-25 22:37:34 +01:00
Bartosz Taudul
cda285ceb7
Display notification when queries are backlogged.
2020-03-25 20:25:33 +01:00
Bartosz Taudul
582e46005e
Display symbols code size.
2020-03-25 20:08:39 +01:00
Bartosz Taudul
383918bca4
Display symbol size in sampled statistics window.
2020-03-25 18:45:05 +01:00
Bartosz Taudul
eae664bd1b
Display instruction pointer counts in source view.
2020-03-25 01:09:02 +01:00
Bartosz Taudul
4c92a2619f
Pass symbol address to source view.
2020-03-25 00:07:31 +01:00
Bartosz Taudul
1999352004
Remove junk.
2020-03-25 00:00:15 +01:00
Bartosz Taudul
96a330e034
Improve ghost zones source location logic.
2020-03-23 01:59:57 +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
13b5ac92d8
Add notification about display of empty labels.
2020-03-22 18:55:45 +01:00
Bartosz Taudul
8aeba9dc79
Wait for ghost zones to be ready.
2020-03-21 17:57:43 +01:00
Bartosz Taudul
c32d9c74b1
Properly display unknown sampled frames in ghost zones.
2020-03-21 15:43:20 +01:00
Bartosz Taudul
df7f087b08
Implement ghost zone skipping.
2020-03-19 00:56:56 +01:00
Bartosz Taudul
a2bf5ac199
Display ghost zones by default, if no instrumented zones.
2020-03-19 00:42:20 +01:00
Bartosz Taudul
e11bf1d62d
Display frame address in tooltip.
2020-03-19 00:35:19 +01:00
Bartosz Taudul
6444051382
Frames may be missing.
2020-03-19 00:35:18 +01:00
Bartosz Taudul
ac84e77333
Ghost zones display prototype.
2020-03-19 00:35:18 +01:00
Bartosz Taudul
4e4ee2ff2c
Add number of call stack samples to thread tooltip.
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
6daa429b69
Add hidden ghost zones indicator.
2020-03-19 00:35:18 +01:00
Bartosz Taudul
4384b812f1
Smaller nested checkboxes.
2020-03-19 00:35:18 +01:00
Bartosz Taudul
335866be88
Add UI to control ghost zones drawing.
...
Disabled for now, will be needed in future.
2020-03-19 00:35:18 +01:00
Bartosz Taudul
ead597bacc
Display count of ghost zones.
2020-03-16 23:05:07 +01:00
Bartosz Taudul
c06ea4a3e8
Fix layout.
2020-03-16 23:04:50 +01:00
Bartosz Taudul
b8cc3f59d6
Count number of input and compressed frame image bytes.
2020-03-14 14:35:57 +01:00
Bartosz Taudul
0776dddc35
Display image compression ratio in bits per pixel.
2020-03-14 13:10:15 +01:00
Bartosz Taudul
20a7bf2b23
There are no parents for mid-stack frames.
2020-03-14 02:06:39 +01:00
Bartosz Taudul
1bb7d05ba0
Display time percentage in statistics menu.
2020-03-14 01:47:18 +01:00
Bartosz Taudul
5046664b8b
Use "self time" consistently in the UI.
2020-03-14 01:38:46 +01:00
Bartosz Taudul
09d54cf9d9
Display custom lock names.
2020-03-08 13:59:31 +01:00
Bartosz Taudul
9668234903
Allow requesting reconnect on trace discard.
2020-03-06 22:11:17 +01:00
Bartosz Taudul
c36ed4b8b8
Boring warning fixes.
2020-03-01 01:48:20 +01:00
Bartosz Taudul
8f9ba5d54a
Rearrange UI.
2020-03-01 01:32:31 +01:00
Bartosz Taudul
d1ff99d6e3
Callstack frame map must not be touched by statistics.
2020-02-29 19:49:33 +01:00
Bartosz Taudul
de3a48f958
Better symbol information.
2020-02-29 19:28:42 +01:00
Bartosz Taudul
07756476b0
Allow viewing global entry stats of a callstack.
2020-02-29 18:59:01 +01:00
Bartosz Taudul
39361f71a1
Allow GetSymbolStats() to fail gracefully.
2020-02-29 18:59:01 +01:00
Bartosz Taudul
9b53792f20
Add call stack sample parents window.
2020-02-29 18:59:01 +01:00
Bartosz Taudul
90f5ae536c
Display count of parent call stacks and frames.
2020-02-29 16:32:33 +01:00
Bartosz Taudul
7947087694
Print frame image compression ration.
2020-02-29 00:49:42 +01:00
Bartosz Taudul
49a0072bab
Use correct wording.
2020-02-27 23:11:45 +01:00
Bartosz Taudul
5f48f8a3aa
Allow hiding symbols with unknown location.
2020-02-27 19:45:41 +01:00
Bartosz Taudul
fea3444625
Use percent print wrapper in more places.
2020-02-27 17:20:34 +01:00
Bartosz Taudul
4fa049188b
Add total time percentage for entries in sampling statistics.
2020-02-27 17:05:56 +01:00
Bartosz Taudul
e438e1c53d
Add another percent print helper.
2020-02-27 17:05:48 +01:00
Bartosz Taudul
8aa70211c0
Display inline functions.
2020-02-27 15:28:58 +01:00
Bartosz Taudul
bc18862dc6
Allow displaying instruction location.
2020-02-27 15:10:50 +01:00
Bartosz Taudul
374ddbe2a6
Replace tabs with radio buttons.
2020-02-27 12:24:28 +01:00
Bartosz Taudul
8173f24515
Add filter to sampling statistics.
2020-02-27 02:31:30 +01:00
Bartosz Taudul
27466fc56b
Add callstack sampling statistics.
2020-02-27 02:08:20 +01:00
Bartosz Taudul
75312c7bb6
Display count of symbols.
2020-02-26 23:02:39 +01:00
Bartosz Taudul
a35795f793
Use more appropriate name.
2020-02-26 23:02:34 +01:00
Bartosz Taudul
847069a59d
Expose symbol source location data.
2020-02-26 22:46:02 +01:00
Bartosz Taudul
02c99fca67
Enable display of symbol address in callstack window.
2020-02-26 19:16:27 +01:00
Bartosz Taudul
8f36ee2c89
Display module name in callstack window.
2020-02-26 01:04:51 +01:00
Bartosz Taudul
4695f60937
Fix display of kernel addresses.
2020-02-24 23:04:53 +01:00
Bartosz Taudul
9e1c24f93e
Add icon to filter entry boxes.
2020-02-24 01:33:12 +01:00
Bartosz Taudul
2e3b13ced5
Optional frame image display in messages list.
2020-02-24 01:29:57 +01:00
Bartosz Taudul
37d9a20b4a
Use caret right to indicate inlined frames, instead of "--".
2020-02-23 16:08:00 +01:00
Bartosz Taudul
31d2bc1740
Fix typo.
2020-02-23 11:49:01 +01:00
Bartosz Taudul
2ec3813cb3
Collapse multiple callstack samples.
2020-02-23 00:24:04 +01:00
Bartosz Taudul
5e2390604d
Use proper check for "draw stack samples" option visibility.
2020-02-22 23:20:59 +01:00
Bartosz Taudul
6532f622cb
Mute color of unknown call frames.
2020-02-22 21:17:36 +01:00
Bartosz Taudul
d4f9810006
Draw callstack sample data.
2020-02-22 18:52:38 +01:00
Bartosz Taudul
b425374cb7
Add callstack samples drawing option.
2020-02-22 18:52:38 +01:00
Bartosz Taudul
ca39c9877e
Display number of callstack samples.
2020-02-22 18:52:37 +01:00
Bartosz Taudul
ba0715b295
Replace remaining manual children checks with HasChildren().
2020-02-21 00:36:45 +01:00
Bartosz Taudul
217c16de20
Display exact start and end time for CPU data.
2020-02-20 23:21:54 +01:00
Bartosz Taudul
d96fcc95c2
Update list of tracy callstack frames.
2020-02-20 00:31:38 +01:00
Bartosz Taudul
b138db9c4d
Display mode in find zone menu.
2020-02-19 23:33:39 +01:00
Bartosz Taudul
b26f642c6e
Change "average" to "mean".
2020-02-19 23:29:18 +01:00
Bartosz Taudul
1492536bdb
Handle FileReadError.
2020-02-12 19:53:37 +01:00
Bartosz Taudul
e0ec98d766
Keep ztime in register.
2020-02-11 23:20:38 +01:00
Bartosz Taudul
5a995d804b
Draw zig-zag as a single stroke.
2020-02-10 23:34:33 +01:00
Bartosz Taudul
06cd57fe6e
Delay rounding h/2.
2020-02-10 23:24:58 +01:00
Bartosz Taudul
d80e7cc025
Remove unnecessary round() calls.
2020-02-10 23:20:35 +01:00
Bartosz Taudul
eff040dca6
Optimize drawing zig-zags.
2020-02-10 22:53:59 +01:00
Bartosz Taudul
76afef9117
Direct checks for context switch end validity.
2020-02-10 01:26:31 +01:00
Bartosz Taudul
ae0392a0e5
Don't needlessly convert doubles to integers.
2020-02-10 01:05:42 +01:00
Bartosz Taudul
d0c2a26ced
Fix continuous frames tooltips.
...
At high zoom-out levels frame tooltip will be always displayed now for
continuous frame sets. This greatly helps with scrubbing to an
appropriate location, basing of frame images.
2020-02-10 00:41:18 +01:00
Bartosz Taudul
ffdd5290bf
Clip wait regions display.
2020-02-10 00:12:34 +01:00
Bartosz Taudul
dd650e08ec
Display saved trace size.
2020-02-08 13:07:02 +01:00
Bartosz Taudul
db408df395
Explain combined values in trace info window.
2020-02-05 23:49:10 +01:00
Bartosz Taudul
7425cd7112
Also display non-user plot data count.
2020-02-05 23:41:53 +01:00
Bartosz Taudul
1bad607e6c
Replace "2x" with "2×".
2020-02-05 23:37:03 +01:00
Bartosz Taudul
8624bb95ba
Fix double separator in options, if no GPU zones are available.
2020-02-05 23:32:59 +01:00
Bartosz Taudul
9556878b23
Display appropriate notification when there's no message data.
2020-02-05 23:30:52 +01:00
Bartosz Taudul
0bb6162a01
Allow sorting memory data listings.
2020-02-05 17:08:41 +01:00
Bartosz Taudul
9aecd43f24
Display exact time in find zone range limit information.
2020-02-03 19:34:51 +01:00
Bartosz Taudul
eca27b9d12
Display exact time, where appropriate.
2020-02-02 15:13:20 +01:00
Bartosz Taudul
e9be4934c4
Display plot item time.
2020-02-02 15:13:20 +01:00
Bartosz Taudul
182efc0b04
Limit timeline view to <-5,5> days range.
2020-02-02 14:11:42 +01:00
Bartosz Taudul
b55fa19f72
Fix division by zero.
2020-02-01 18:01:24 +01:00
Bartosz Taudul
555203c46a
Don't display unknown frames if there's no callstack frames.
2020-02-01 17:49:27 +01:00
Bartosz Taudul
024182b6a0
Fit trace description entry field to window width.
2020-02-01 17:36:51 +01:00
Bartosz Taudul
d680fa6cd6
Clip memory allocation lists.
2020-01-31 19:18:20 +01:00
Bartosz Taudul
a84eec1aef
Clip found zones list.
2020-01-31 19:07:20 +01:00
Bartosz Taudul
5f91b48e0c
Clip child zone list submissions.
2020-01-31 18:58:31 +01:00
Bartosz Taudul
4a6bc284af
Optimize "string (percentage)" printing.
2020-01-31 18:26:28 +01:00
Bartosz Taudul
ec8c661b38
Remove unneeded sprintfs.
2020-01-31 18:26:28 +01:00
Bartosz Taudul
f017b27ae2
RealToString() is always called with separator set to true.
2020-01-31 01:43:24 +01:00
Bartosz Taudul
9a5104dacf
Extract and pass a value, which will be changing.
2020-01-30 01:57:49 +01:00
Bartosz Taudul
c04824890d
Add border to frame range highlight.
2020-01-29 02:17:13 +01:00
Bartosz Taudul
6e0c238f71
Remove unneeded lambda capture.
2020-01-28 21:55:32 +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
c1ba647f5b
Fix compilation errors.
2020-01-26 17:48:19 +01:00
Bartosz Taudul
1915a9e5f6
Display extra zone data count.
2020-01-26 17:28:37 +01:00
Bartosz Taudul
f2a226407f
Store extra zone data separately.
...
Extra zone data consists of:
- custom zone name,
- zone text,
- zone callstack index.
If neither of these data values is stored in zone, 5 bytes are saved. If
any one of them is required, extra 4 bytes are added, for an index into
extra data array.
Memory savings:
android 2371 MB -> 2324 MB
big 7593 MB -> 6747 MB
chicken 1687 MB -> 1501 MB
drl-l-b 1119 MB -> 1013 MB
long 4289 MB -> 4190 MB
q3bsp-mt 4399 MB -> 3918 MB
q3bsp-st 1067 MB -> 1027 MB
raytracer 6057 MB -> 5342 MB
selfprofile 1177 MB -> 1079 MB
tracy-dynamic 4489 MB -> 4013 MB
tracy-static 16.2 GB -> 14.3 GB
2020-01-26 16:19:07 +01:00
Bartosz Taudul
3aa427fdd6
Remove queue delay adjustment due to zone text.
2020-01-26 15:09:12 +01:00
Bartosz Taudul
2377911313
Package/core tooltip cosmetics.
2020-01-24 21:32:36 +01:00
Bartosz Taudul
c43bd2bfe2
Add dedicated function to check if zone has children.
2020-01-24 02:17:38 +01:00
Bartosz Taudul
ad3f37aec6
No need for two same check.
2020-01-24 02:16:29 +01:00
Bartosz Taudul
443771ecff
Only display zone "statistics" button if data is available.
2020-01-23 19:49:23 +01:00
Bartosz Taudul
1c1e5d5ee7
Don't check for invalid zones in source location data.
2020-01-23 19:10:56 +01:00
Bartosz Taudul
54a767bf81
Use just sign bit to check end value validity.
2020-01-22 22:25:04 +01:00
Bartosz Taudul
3010c7ce63
Don't use proxy for a pointer.
2020-01-22 01:54:25 +01:00
Bartosz Taudul
ea424a4c8d
Use custom vector.
2020-01-20 23:58:36 +01:00
Bartosz Taudul
e5ae1ea2cc
Only perform search, if necessary.
2020-01-20 23:53:04 +01:00
Bartosz Taudul
6358b4588d
Preserve groups order.
2020-01-20 23:40:07 +01:00
Bartosz Taudul
6b3165d3cc
Perform map lookup in one place.
2020-01-20 23:34:48 +01:00
Bartosz Taudul
38e7d12b0b
Use parallel sort in find zone menu.
2020-01-20 23:21:43 +01:00
Bartosz Taudul
46dc85c10c
Fix parent identifier extension to 64 bits.
...
Source location identifiers are signed 16 bits. Extending this value to
64 bits without first casting it to unsigned 16 bit caused bit extension
of the sign bit, making the value clash with "unselected" group
identifier.
2020-01-19 15:25:45 +01:00
Bartosz Taudul
ed5f534bbb
Use proper data type size.
2019-12-28 18:28:37 +01:00
Bartosz Taudul
24727175d7
Implement copying user data location to clipboard.
2019-12-28 18:17:06 +01:00
Bartosz Taudul
0ff6d6364b
Don't operate on empty vector.
2019-12-28 18:03:13 +01:00
Bartosz Taudul
17afcbce4f
Highlight zone from zone list on histogram.
2019-12-28 17:50:54 +01:00
Bartosz Taudul
46ed2fb802
Enhance time distribution zone search.
...
When the find zone menu is opened from the zone time distribution list,
time range limit will be enabled, preventing display of zones outside of
the selected zone range. This allows much easier finding of child zones
within the selected zone scope.
Limiting zone search to a specified thread(s) might also be helpful
here, but it can be worked around by looking only at zones in a single
thread group.
2019-12-28 17:28:39 +01:00
Bartosz Taudul
e083b2773a
Add icon to zone time range display.
2019-12-28 17:24:11 +01:00
Bartosz Taudul
870c9c734f
Draw range limit highlight.
2019-12-28 17:23:09 +01:00
Bartosz Taudul
46f3390365
Allow limiting zone time range in find zone menu.
2019-12-28 17:18:07 +01:00
Bartosz Taudul
33e7d175d4
Add zone time range limit controls.
2019-12-28 15:57:07 +01:00
Bartosz Taudul
6c6b78bcbd
Fix find zone selection time.
2019-12-28 15:48:45 +01:00
Bartosz Taudul
115c66324d
Add inclusive time display to time distribution.
2019-12-25 15:07:52 +01:00
Bartosz Taudul
1032eb95d2
Set sane default window size for CPU data.
2019-12-19 17:45:55 +01:00
Bartosz Taudul
95af214abe
Prevent 0 ns timeline view range.
2019-12-16 18:40:38 +01:00
Bartosz Taudul
0507460a16
Add markers for package and core thread migrations.
2019-11-29 23:09:30 +01:00
Bartosz Taudul
9cf7629e9b
Display CPU package, core tooltip for zone CPU list.
2019-11-29 23:09:11 +01:00
Bartosz Taudul
7ac47ab6bb
Display package, core info on CPU data timeline.
2019-11-29 22:57:18 +01:00
Bartosz Taudul
712403e9fd
Transfer, display, save CPU topology data.
2019-11-29 22:41:41 +01:00
Bartosz Taudul
ade01e98ad
Add time-relative switch to message list in zone info window.
2019-11-27 01:42:44 +01:00
Bartosz Taudul
3e47fd6bcd
Display thread color boxes in messages list.
2019-11-27 01:38:47 +01:00
Bartosz Taudul
cc87cebee3
Display trace parameters only when the connection is active.
2019-11-26 00:57:06 +01:00
Bartosz Taudul
4551553eb4
Implement setting client parameters from server.
2019-11-25 23:59:48 +01:00
Bartosz Taudul
ace780ea74
Add CPU data thread highlight.
2019-11-24 01:40:32 +01:00
Bartosz Taudul
07e69a88c2
Fix CPU thread highlight for Vulkan zones.
2019-11-24 01:28:23 +01:00
Bartosz Taudul
2379d422cf
GPU zones highlight whole CPU thread timeline.
2019-11-24 01:21:49 +01:00
Bartosz Taudul
7f689dadbe
Use backspace icon for buttons erasing text entry.
2019-11-24 01:06:04 +01:00
Bartosz Taudul
1cc5dea616
Ignore BSD tracy-specific callstack frames.
2019-11-21 21:51:58 +01:00
Bartosz Taudul
c62732804a
Round CPU data font height.
2019-11-17 14:30:10 +01:00
Bartosz Taudul
1e29d12819
More saturation in dynamic colors.
2019-11-16 23:03:46 +01:00
Bartosz Taudul
8ca67e49e4
Scale frame images in tooltips according to DPI scaling.
2019-11-16 22:58:51 +01:00
Bartosz Taudul
2d22372de3
Scale playback contents according to DPI scale.
2019-11-16 22:54:52 +01:00
Bartosz Taudul
37a658d933
Add srcloc color box to zone tooltips.
2019-11-16 22:38:43 +01:00
Bartosz Taudul
f670d82796
Show migrations when thread is hovered in CPU data window.
2019-11-16 16:51:56 +01:00
Bartosz Taudul
18fd928a9d
Don't display callstack message column if there are no callstacks.
2019-11-15 20:34:19 +01:00
Bartosz Taudul
d7d6a0fa9d
More consistent srcloc/thread colors in zone info windows.
2019-11-15 20:13:13 +01:00
Bartosz Taudul
49e3bc8b21
Don't draw unneeded separator.
2019-11-15 20:04:59 +01:00
Bartosz Taudul
5f0cab6b63
Display call stack calls in memory allocation window.
2019-11-15 20:02:21 +01:00
Bartosz Taudul
973fd941d5
Extract call stack calls drawing functionality.
2019-11-15 19:59:13 +01:00
Bartosz Taudul
a518564006
No extended font in no-extended-font path.
2019-11-15 19:58:50 +01:00
Bartosz Taudul
12037b88ff
Display messages callstack in messages list.
2019-11-15 01:22:26 +01:00
Bartosz Taudul
9cf46e6ae6
Fix lock time announce/terminate in older traces.
2019-11-13 02:04:35 +01:00
Bartosz Taudul
fd7ad586af
Make display of zone time in frames toggleable.
...
And disable it by default, as it can be heavy on resources.
2019-11-10 23:27:37 +01:00
Bartosz Taudul
fa53c2e683
Don't care about memory usage tracking data races.
2019-11-10 19:21:24 +01:00
Bartosz Taudul
ded49edf4c
Fix magic vectors in single-threaded Vulkan tooltip.
2019-11-10 16:50:19 +01:00
Bartosz Taudul
4eb8acc973
Magic vectors in automatic GPU drift detection.
2019-11-10 02:27:46 +01:00
Bartosz Taudul
1b6c79fa7b
More magic vector fixes.
2019-11-10 02:10:21 +01:00
Bartosz Taudul
226a7b7cfb
Magic vectors in GPU children list.
2019-11-10 02:03:31 +01:00
Bartosz Taudul
c65d524725
Magic vectors in GPU zone info window.
2019-11-10 01:59:20 +01:00
Bartosz Taudul
d32e3cb867
Adapt GPU zone utility functions to magic vectors.
2019-11-10 01:56:28 +01:00
Bartosz Taudul
4ed4e1005c
Magic vectors in GPU drawing setup.
2019-11-10 01:35:57 +01:00
Bartosz Taudul
675e6a8d1a
Support magic vectors for GPU zones.
2019-11-10 01:30:10 +01:00
Bartosz Taudul
06ad948abc
Adapt zone children to magic vectors.
2019-11-10 01:23:44 +01:00
Bartosz Taudul
50efa8f672
Adapt time distribution calculation to magic vectors.
2019-11-10 01:08:15 +01:00
Bartosz Taudul
0c1f3ac16d
Adapt zone getters to magic vectors.
2019-11-10 00:57:44 +01:00
Bartosz Taudul
8ab2cf09b7
Handle magic vectors during dispatch.
2019-11-10 00:00:40 +01:00
Bartosz Taudul
7be19193d9
Use adapters during zone level iteration.
2019-11-10 00:00:40 +01:00
Bartosz Taudul
d741fb0af9
Plot can be empty if it was only configured.
2019-11-06 12:08:20 +01:00
Bartosz Taudul
5d3392428e
Remove unneeded includes.
2019-11-06 01:21:22 +01:00
Bartosz Taudul
cfce429fca
Format plot values according to requested formatting.
2019-11-05 18:08:42 +01:00
Bartosz Taudul
6a500ccdb3
Don't display CPU usage until data is ready.
2019-11-05 01:28:44 +01:00
Bartosz Taudul
09d6f3f917
Check if CPU graph is not obscured.
2019-11-04 01:15:49 +01:00
Bartosz Taudul
9bc6a3e0ee
Add zone color boxes to parent groups in find zone menu.
2019-11-03 22:52:24 +01:00
Bartosz Taudul
209c1fdc72
Small radio buttons in find zone menu.
2019-11-03 22:32:34 +01:00
Bartosz Taudul
9b5ec8451f
Remove dead assignment.
2019-11-03 16:57:31 +01:00
Bartosz Taudul
dfc35c1bf1
Fix crashes when callstack frames are not yet available.
2019-11-03 16:44:26 +01:00
Bartosz Taudul
d9c3238462
Save 2 bytes per PlotItem.
...
Memory savings:
android 2614 MB -> 2487 MB (95%)
chicken 1932 MB -> 1852 MB (95%)
mem 6067 MB -> 5747 MB (94%)
q3bsp-mt 5059 MB -> 5017 MB (99%)
q3bsp-st 1211 MB -> 1171 MB (96%)
2019-11-03 16:29:45 +01:00
Bartosz Taudul
acce6867f1
Selecting a zone in time distribution list opens zone statistics.
2019-11-03 03:08:23 +01:00
Bartosz Taudul
13a7444f03
Add zone color boxes to time distribution table.
2019-11-02 23:14:49 +01:00
Bartosz Taudul
c294e62f5e
Add zone color boxes to child zone list.
2019-11-02 23:11:37 +01:00
Bartosz Taudul
1a6f04f6ce
Add zone color boxes to zone trace.
2019-11-02 23:05:11 +01:00
Bartosz Taudul
3a304ad054
Add zone color boxes to statistics menu.
2019-11-02 23:00:42 +01:00
Bartosz Taudul
04cb7732b8
Add zone color boxes to compare menu.
2019-11-02 22:58:50 +01:00
Bartosz Taudul
4dde1ca070
Add zone color boxes to find zone menu.
2019-11-02 22:48:00 +01:00
Bartosz Taudul
b7cd28ef72
Add source location color retriever.
2019-11-02 22:45:11 +01:00
Bartosz Taudul
ce82bb816b
Use short ptr for find zone grouping data.
...
Overall, the short ptr changes have the following effect on memory
usage:
big 9007 MB -> 8670 MB (96%)
chicken 2007 MB -> 1932 MB (96%)
drl-l-b 1383 MB -> 1304 MB (94%)
q3bsp-mt 5252 MB -> 5059 MB (96%)
long 5152 MB -> 4799 MB (93%)
fi-big 4141 MB -> 4000 MB (96%)
2019-11-02 16:54:12 +01:00
Bartosz Taudul
03656b2320
Remove unused variable.
2019-11-02 16:54:12 +01:00
Bartosz Taudul
a40bbacb17
Use short ptr for CPU zone data.
2019-11-02 16:54:12 +01:00
Bartosz Taudul
cb20bf01f9
Use short ptr for GPU zone data.
2019-11-02 16:54:11 +01:00
Bartosz Taudul
c7664b0a98
Use short ptr in LockEventPtr.
2019-11-02 16:17:45 +01:00
Bartosz Taudul
0552d75400
Allow filtering entries in statistics menu.
2019-11-01 20:49:02 +01:00
Bartosz Taudul
f88ec0c141
Convert namespaces combo box to radio buttons.
2019-11-01 20:23:22 +01:00
Bartosz Taudul
13b656fe61
Make srcloc dynamic color depend on function name.
2019-11-01 20:17:25 +01:00
Bartosz Taudul
d38257ea90
Add zone coloring mode based on source location.
2019-11-01 02:07:55 +01:00
Bartosz Taudul
978071f2ba
Allow grouping zones by parent.
2019-10-31 15:00:22 +01:00
Bartosz Taudul
c0df3dd965
Implement getting zone parent when thread id is known.
2019-10-31 14:59:52 +01:00
Bartosz Taudul
25b610a36f
Pack child into GPU start/end in GpuEvent (saves 4 bytes).
...
long 5152 MB -> 5061 MB
2019-10-30 23:50:37 +01:00
Bartosz Taudul
7319293081
Use proper scale for next time of collapsed items.
2019-10-30 23:17:46 +01:00
Bartosz Taudul
e8286600d1
Use -1 as invalid GPU start time.
2019-10-30 23:12:43 +01:00
Bartosz Taudul
0ac432dd25
Better GPU time check.
2019-10-30 22:35:58 +01:00
Bartosz Taudul
ae4794ab4c
Save 2 bytes in ContextSwitchData and ContextSwitchCpu.
2019-10-30 22:25:46 +01:00
Bartosz Taudul
99d198d0bf
Pack csAlloc in MemEvent (saves 3 bytes).
...
Memory usage change on selected traces:
android 2699 MB -> 2613 MB
chicken 2019 MB -> 2007 MB
mem 6308 MB -> 6068 MB
q3bsp-mt 5283 MB -> 5252 MB
q3bsp-st 1241 MB -> 1211 MB
2019-10-30 22:01:13 +01:00
Bartosz Taudul
01ceedb57a
Focus out labels in connection window.
2019-10-24 00:54:19 +02:00
Bartosz Taudul
c5a6c7bf63
Display transferred data size.
2019-10-24 00:47:25 +02:00
Bartosz Taudul
d592af9c2f
Fix TRACY_NO_STATISTICS build.
2019-10-20 17:32:20 +02:00
Bartosz Taudul
5816dc2b11
Don't cache timedist data if ctx switch data is incomplete.
2019-10-20 17:03:30 +02:00
Bartosz Taudul
ccdc102d5a
Cache zone time distribution data.
2019-10-20 03:24:58 +02:00
Bartosz Taudul
bfbd09b619
Add CPU usage graph tooltip.
2019-10-15 21:47:37 +02:00
Bartosz Taudul
7a9d4aecd3
Fix graph height calculation.
2019-10-15 21:41:06 +02:00
Bartosz Taudul
4372ad1bc3
Allow disabling CPU usage graph.
2019-10-15 21:37:16 +02:00
Bartosz Taudul
c28bab59b5
Improve look of CPU usage graph.
2019-10-15 21:20:00 +02:00
Bartosz Taudul
5aeeefefbd
Draw CPU usage graph.
2019-10-15 16:55:15 +02:00
Bartosz Taudul
3ce6b1205f
Don't iterate over 256 CPUs.
2019-10-15 16:13:53 +02:00
Bartosz Taudul
fefa3b4693
Improve options UI.
2019-10-15 01:49:36 +02:00
Bartosz Taudul
f0c77b4ef4
Add annotation list window.
2019-10-14 20:52:18 +02:00
Bartosz Taudul
c6207ed0e9
Move extra tools to main window button bar popup.
2019-10-14 20:07:55 +02:00
Bartosz Taudul
6de8e6987f
Sort annotations.
2019-10-14 19:04:37 +02:00
Bartosz Taudul
671a8f673e
Don't interact with unfocused annotations.
2019-10-13 17:01:55 +02:00
Bartosz Taudul
e462335f83
Save/load annotations.
2019-10-13 16:29:24 +02:00
Bartosz Taudul
20cf1d9f83
Implement color selection for annotation region.
2019-10-13 16:14:22 +02:00
Bartosz Taudul
f9e860f559
Display annotation text on timeline.
2019-10-13 15:59:48 +02:00
Bartosz Taudul
1527e7bc10
Add annotation modification window.
2019-10-13 15:50:37 +02:00
Bartosz Taudul
5fed86dae7
Allow adding annotations to timeline.
2019-10-13 15:28:52 +02:00
Bartosz Taudul
215dc8a804
More compact GpuEvent struct (save 4 bytes).
...
Memory usage reduction of various traces:
big 9011 -> 9007
frameimages 561 -> 552
fi-big 4144 -> 4139
long 5253 -> 5125
2019-10-13 14:42:52 +02:00
Bartosz Taudul
c044df6324
Display number of GPU zones.
2019-10-13 14:21:28 +02:00
Bartosz Taudul
d4620b4157
Fix UI.
2019-10-09 22:33:02 +02:00
Bartosz Taudul
0a358ac1f0
Time distribution may now only include running time.
2019-10-09 22:13:52 +02:00
Bartosz Taudul
6ced346e08
Different sorting modes for zone time distribution.
2019-10-09 21:42:46 +02:00
Bartosz Taudul
ed1f722c51
Display trace file name in trace info window.
2019-10-07 21:36:19 +02:00
Bartosz Taudul
4c4099877d
Track trace file name in TracyView.
2019-10-07 21:36:19 +02:00
Bartosz Taudul
1cd5ccb3c1
Display zone time distribution.
2019-10-04 21:34:00 +02:00
Bartosz Taudul
5111275770
Highlight hovered zone on the find zone zones list.
2019-10-04 13:02:26 +02:00
Bartosz Taudul
b913c17f5b
Add "no grouping" mode to find zone zones list.
2019-10-04 12:42:05 +02:00
Bartosz Taudul
f2bb933f49
Use proper background color.
2019-10-02 00:49:30 +02:00
Bartosz Taudul
3b223c64d4
Darken to background color to hide overhang.
...
This only handles the root window case. When the profiler is embedded in
other application, the window background color is not matched.
2019-10-01 23:17:36 +02:00
Bartosz Taudul
db29d309a2
Lambda capture is not needed here.
2019-10-01 22:42:43 +02:00
Bartosz Taudul
65ea33a60f
Store memory callstack data as 24-bit ints.
...
This reduces MemEvent size from 40 to 38 bytes.
Memory usage reduction:
chicken 2027 -> 2019
mem 6468 -> 6308
q3bsp-mt 5304 -> 5283
2019-10-01 22:38:17 +02:00
Bartosz Taudul
f0b957ec56
Store callstacks on 24 bits.
...
ZoneEvent is now 27 bytes.
Memory usage reduction on selected traces (sizes in MB):
big 9224 -> 9011 (97%)
chicken 2044 -> 2027 (99%)
drl-l-b 1443 -> 1383 (95%)
long 5327 -> 5253 (98%)
q3bsp-mt 5400 -> 5304 (98%)
selfprofile 1403 -> 1382 (98%)
2019-10-01 22:38:17 +02:00
Bartosz Taudul
717a212563
Save another 2 bytes per ZoneEvent.
...
ZoneEvent is not 28 bytes.
Memory usage reduction on selected traces (sizes in MB):
big 9527 -> 9224 (96%)
chicken 2107 -> 2044 (97%)
drl-l-b 1479 -> 1443 (97%)
long 5412 -> 5327 (98%)
q3bsp-mt 5592 -> 5400 (96%)
selfprofile 1443 -> 1403 (97%)
2019-10-01 01:05:37 +02:00
Bartosz Taudul
acfcfb09ce
Hide context switch options, if no data is available.
2019-09-30 23:46:10 +02:00
Bartosz Taudul
0e56682964
Darkening of inactive thread regions.
2019-09-30 23:37:36 +02:00
Bartosz Taudul
d228bcb622
Pack StringIdx in 24 bits.
...
This reduces ZoneEvent size from 32 to 30 bytes.
Memory usage reduction on selected traces (sizes in MB):
big 9902 -> 9527 (96%)
chicken 2172 -> 2107 (97%)
ctx-big 311 -> 309 (99%)
drl-l-b 1570 -> 1479 (94%)
long 5496 -> 5412 (98%)
mem 6468 -> 6468 (100%)
q3bsp-mt 5784 -> 5592 (96%)
selfprofile 1486 -> 1443 (97%)
2019-09-29 20:32:42 +02:00
Bartosz Taudul
59632f0d37
One more place to check if srcloc zones are ready.
2019-09-29 20:17:47 +02:00
Bartosz Taudul
873d536845
Display number of strings.
2019-09-29 19:22:50 +02:00
Bartosz Taudul
cb6a3f3334
Highlight CPU data timeline from thread tooltip.
2019-09-29 18:55:31 +02:00
Bartosz Taudul
3b8ab5715f
Highlight CPU data timeline from CPU data window.
2019-09-29 18:53:58 +02:00
Bartosz Taudul
cafb5d6a99
Highlight threads on CPU data timeline.
2019-09-29 18:49:48 +02:00
Bartosz Taudul
c09f3c0676
Add thread color boxes to CPU data window.
2019-09-25 02:12:35 +02:00
Bartosz Taudul
6c5627d8e4
Add thread color boxes to memory allocations listings.
2019-09-24 23:58:11 +02:00
Bartosz Taudul
581fd920a1
Add thread color boxes to lock info.
2019-09-24 23:52:52 +02:00
Bartosz Taudul
12e2bcb691
Add thread color boxes to zone info windows.
2019-09-24 23:51:47 +02:00
Bartosz Taudul
ad2dd09c25
Add thread color boxes to zone tooltips.
2019-09-24 23:50:00 +02:00
Bartosz Taudul
47f81d0ba4
Add thread color box to memory plot tooltip.
2019-09-24 23:47:51 +02:00
Bartosz Taudul
9c86102bad
Add thread color box to CPU data on timeline.
2019-09-24 23:46:54 +02:00
Bartosz Taudul
a7e3324eba
Add thread color boxes to GPU context tooltips.
2019-09-24 23:45:36 +02:00
Bartosz Taudul
6ffbd00b0c
Add thread color box to crash info.
2019-09-24 23:42:25 +02:00
Bartosz Taudul
c73a74b8d5
Add thread color boxes to memory allocation info.
2019-09-24 23:41:28 +02:00
Bartosz Taudul
e9b815a3b8
Show thread color boxes in find zone menu.
2019-09-24 23:38:29 +02:00
Bartosz Taudul
06fe469598
Add thread color boxes to messages thread list.
2019-09-24 23:33:33 +02:00
Bartosz Taudul
63184f8762
Better Vulkan thread heuristics.
2019-09-24 00:55:24 +02:00
Bartosz Taudul
a5ba74ed13
Handle multiple Vulkan threads.
2019-09-23 17:27:49 +02:00
Bartosz Taudul
82cd667b30
Allow specifying network port in server.
2019-09-21 15:43:01 +02:00
Bartosz Taudul
4c736aecfa
Use fibonacci hashing to determine thread colors.
2019-09-21 14:03:42 +02:00
Bartosz Taudul
7a1fb4e0bd
Proper message when call stack trees are not available.
2019-09-21 00:57:12 +02:00
Bartosz Taudul
46f7235e32
Display proper message when there are no active allocations.
2019-09-21 00:54:30 +02:00
Bartosz Taudul
b362baed5f
Minor UI improvements.
2019-09-19 01:10:33 +02:00
Bartosz Taudul
6a0512fe16
Allow comparing frame times.
2019-09-16 22:02:47 +02:00
Bartosz Taudul
b99675ae60
Use thread color for collapsed zones.
2019-09-16 20:34:55 +02:00
Bartosz Taudul
36b2b8f71f
Always return static thread color if dynamic colors are disabled.
2019-09-16 20:31:32 +02:00
Bartosz Taudul
5796f19a3b
Focus out exact memory plot value.
2019-09-16 20:27:16 +02:00
Bartosz Taudul
5429f04614
Don't use source location data before it's ready.
2019-09-16 15:37:57 +02:00
Bartosz Taudul
6d00a56c61
Draw thread migrations across CPU cores.
2019-09-12 20:08:57 +02:00
Bartosz Taudul
23b6e5156b
Display thread color in thread tooltip.
2019-09-11 19:01:27 +02:00
Bartosz Taudul
2872edce5d
Use thread colors in context switch graph.
2019-09-11 18:56:54 +02:00
Bartosz Taudul
8ddafe4153
Extract color highlight functionality.
2019-09-11 18:52:25 +02:00
Bartosz Taudul
0850145811
Disable color box drag and drop.
2019-09-11 18:48:28 +02:00
Bartosz Taudul
2cec6f5482
Add thread colors to options menu.
2019-09-11 18:44:06 +02:00
Bartosz Taudul
4ea62ecb06
Extract small color box drawing.
2019-09-11 18:38:10 +02:00
Bartosz Taudul
00409b0b94
Extract thread color getter.
2019-09-11 18:34:48 +02:00
Bartosz Taudul
a5a6b11b63
Zones can now have dynamic colors.
2019-09-08 14:33:30 +02:00
Bartosz Taudul
2714152f84
Allow calculating zone depth.
2019-09-08 14:16:12 +02:00
Bartosz Taudul
c9a1d3d7e5
Display zone color in zone info window.
2019-09-08 13:19:43 +02:00
Bartosz Taudul
b7522ec4c1
Allow getting zone color sans higlights, etc.
2019-09-08 13:16:00 +02:00
Bartosz Taudul
17e6a97552
Let's leave this here.
2019-09-07 17:49:54 +02:00
Bartosz Taudul
a0814a2e5c
Correctly calculate discontinuous frames time.
2019-09-07 17:39:39 +02:00
Bartosz Taudul
aac0a36a2d
Don't use source location zones before they are ready.
2019-09-07 17:23:11 +02:00
Bartosz Taudul
3449f0777e
Display zone time on frames plot.
2019-09-07 16:55:49 +02:00
Bartosz Taudul
0b1a6047f6
Add different highlight for zones selected on histogram.
2019-09-07 15:33:11 +02:00
Bartosz Taudul
57a2b62edc
Display number of threads for pids in CPU data list.
2019-09-04 01:43:56 +02:00
Bartosz Taudul
aa2530d442
Display external thread name (if applicable) on CPU data timeline.
2019-08-31 19:37:05 +02:00
Bartosz Taudul
86cb477811
Pack ZoneThreadData.
...
This reduces struct size from 10 to 8 bytes. Assumes 48-bit pointers
(4-level paging)!
Memory savings (MB):
android 2766 -> 2757 (99%)
big 10.29 G -> 9902 (96%)
chicken 2244 -> 2172 (96%)
ctx-android 228 -> 224 (98%)
drl-l-b 1635 -> 1570 (96%)
gn-vulkan 244 -> 240 (98%)
long 5656 -> 5496 (97%)
q3bsp-mt 6043 -> 5784 (95%)
selfprofile 1554 -> 1486 (95%)
2019-08-31 00:55:51 +02:00
Bartosz Taudul
217a3781e6
Fix possible wrong process name for pid 0.
2019-08-30 00:59:54 +02:00
Bartosz Taudul
5e8b2a0723
Display wakeup times in zone wait regions list.
2019-08-28 23:03:16 +02:00
Bartosz Taudul
6f25ad5fcb
Save per-trace options.
2019-08-28 21:35:08 +02:00
Bartosz Taudul
fc5293b1ae
Only scroll message list to bottom if capture is live.
2019-08-28 21:04:28 +02:00
Bartosz Taudul
a2f968d843
Compress thread id in MessageData.
2019-08-28 21:03:01 +02:00
Bartosz Taudul
ede26b0caf
Fix skipping zone levels.
2019-08-28 20:47:19 +02:00
Bartosz Taudul
85027c185d
Extract notification area drawing to a separate function.
2019-08-28 20:27:39 +02:00
Bartosz Taudul
a8eb99efcc
Add notification icons when a drawing a category is disabled.
2019-08-28 20:24:14 +02:00
Bartosz Taudul
5b0ccef373
Change some icons.
2019-08-28 20:17:38 +02:00
Bartosz Taudul
28a20e631e
Preserve frame graph position and scale.
2019-08-28 19:52:36 +02:00
Bartosz Taudul
17d4a82ca5
Preserve timeline vertical scroll position.
2019-08-28 19:49:27 +02:00
Bartosz Taudul
f37797db44
Save/load view state.
2019-08-28 19:45:22 +02:00
Bartosz Taudul
dc5444ff0f
Notify UserData that view state should be preserved.
...
This is only active when a trace is loaded from a file (and state should
be persistent for future sessions using this trace), or when state is
saved to a file (so that future sessions will use current state).
No state is preserved by default, i.e. when the trace was not saved to a
file.
2019-08-28 19:37:01 +02:00
Bartosz Taudul
949c9cb121
Move some view data to a separate structure.
2019-08-28 19:35:54 +02:00
Bartosz Taudul
2a0d6ce4ad
Add notification area indicator for hidden timeline items.
2019-08-28 18:36:05 +02:00
Bartosz Taudul
ed83762a1a
Keep things simple.
2019-08-28 01:29:58 +02:00
Bartosz Taudul
ef287c8aab
Display external thread names of profiled program on CPU data timeline.
2019-08-27 23:17:53 +02:00
Bartosz Taudul
8eb7220dd7
Use the new thread name getter.
2019-08-27 23:08:14 +02:00
Bartosz Taudul
f8e3d1ad0a
Try to fix current program's thread names.
...
External thread names can be cut-off to include only the first 15-or-so
characters. If a local thread name is known and its beginning matches
the external name, use the local name instead.
2019-08-27 22:41:03 +02:00
Bartosz Taudul
8bb13ca09e
Use captured program name in CPU data.
...
This fixes android application names, which are cut to show only last
15-or-so letters.
2019-08-27 22:35:53 +02:00
Bartosz Taudul
eb78ecd0fd
Display frame number in playback window.
2019-08-26 19:01:59 +02:00
Bartosz Taudul
3e4d3efbdb
Extract frame number getter.
2019-08-26 19:01:51 +02:00
Bartosz Taudul
e5a11ad593
Allow sorting CPU data table by different columns.
2019-08-25 00:17:06 +02:00
Bartosz Taudul
4376757912
Display thread ids in options menu.
2019-08-24 23:43:36 +02:00
Bartosz Taudul
2b9ec14c92
Display threads ids as base-10 numbers.
2019-08-24 23:41:33 +02:00
Bartosz Taudul
1712431dfd
Compress external threads. Saves 4 bytes per ctx switch.
...
Dropped support for loading context switch data in previous versions of
traces.
2019-08-19 23:09:58 +02:00
Bartosz Taudul
e60b2884f4
Mark local threads with different color.
2019-08-18 14:57:44 +02:00
Bartosz Taudul
9a3974b8f1
Display process times in graphical form.
2019-08-18 14:51:25 +02:00
Bartosz Taudul
2eed28b19f
Highlight current process.
2019-08-18 14:46:59 +02:00
Bartosz Taudul
ae9cae781a
Display CPU migrations percentage.
2019-08-18 14:44:00 +02:00
Bartosz Taudul
691fe06bfe
Compare pids to determine if thread is local untracked.
2019-08-18 14:40:04 +02:00
Bartosz Taudul
95f4162870
Display number of tracked processes.
2019-08-18 14:30:52 +02:00
Bartosz Taudul
7a036b56b1
Add icon to CPU data button.
2019-08-18 14:30:01 +02:00
Bartosz Taudul
c5060da185
Display unknown pid as unknown.
2019-08-18 14:28:56 +02:00
Bartosz Taudul
faac08865a
Display basic information about CPU usage.
2019-08-18 12:28:38 +02:00
Bartosz Taudul
fa573ef4cf
Display PID.
2019-08-17 22:21:02 +02:00
Bartosz Taudul
1024992493
React to enter key in "go to frame" dialog.
2019-08-17 22:01:06 +02:00
Bartosz Taudul
258cf38d64
Fix flicker.
2019-08-17 21:59:08 +02:00
Bartosz Taudul
0ea8789f39
Display CPU core in waking up thread popup.
2019-08-17 21:24:40 +02:00
Bartosz Taudul
414f903cc5
Collect thread wakeup data.
2019-08-17 17:05:29 +02:00
Bartosz Taudul
f957f64ce1
No magic numbers.
2019-08-17 16:26:59 +02:00
Bartosz Taudul
65e62dea06
Display thread ids next to thread names in CPU data.
2019-08-17 03:06:54 +02:00
Bartosz Taudul
e975c4d7bf
Also retrieve external thread names.
2019-08-16 19:49:16 +02:00
Bartosz Taudul
134a8c5d2a
Fix positioning.
2019-08-16 19:32:25 +02:00
Bartosz Taudul
edd5338faa
Display untracked threads.
2019-08-16 19:30:46 +02:00
Bartosz Taudul
fe7f56b022
Implement retrieval of external process names.
2019-08-16 19:22:23 +02:00
Bartosz Taudul
56e6795c76
Add per-cpu context switch tooltips.
2019-08-16 18:39:03 +02:00
Bartosz Taudul
7e81f3250e
Add CPU tooltip.
2019-08-16 18:39:03 +02:00
Bartosz Taudul
8e71e2dba5
Draw per-CPU global context switch data.
2019-08-16 18:22:57 +02:00
Bartosz Taudul
8bc4258e29
Display count of per-cpu context switch data.
2019-08-16 16:51:18 +02:00
Bartosz Taudul
9e0fe226df
Add small font.
2019-08-16 16:02:57 +02:00
Bartosz Taudul
95879d2bd9
Use proper UI element to indicate selectable items.
2019-08-16 00:12:03 +02:00
Bartosz Taudul
889eddd646
Pack ContextSwitchData. Saves 3 bytes per context switch region.
2019-08-15 23:53:47 +02:00
Bartosz Taudul
e90ddf7ee5
Don't search whole data set twice.
2019-08-15 23:03:37 +02:00
Bartosz Taudul
c22c259a13
Pack time and thread in MemEvent.
...
This saves 4 bytes per logged memory allocation. Memory savings for
selected traces:
android 2945 MB -> 2766 MB
chicken 2261 MB -> 2245 MB
q3bsp-mt 6085 MB -> 6043 MB
mem 6788 MB -> 6468 MB
2019-08-15 23:02:43 +02:00
Bartosz Taudul
41beff29a9
Remove redundant GetTimeBegin().
...
Traces now start at zero time.
2019-08-15 21:04:20 +02:00
Bartosz Taudul
5e20b3f28a
Pack time and source location in LockEvent.
2019-08-15 20:39:16 +02:00
Bartosz Taudul
bf3ad57456
Pack start time and srcloc together in ZoneEvent.
...
This reduces ZoneEvent struct size by 2 bytes. Memory savings on various
captures:
10.62 GB -> 10.29 GB
2342 MB -> 2276 MB
1706 MB -> 1635 MB
6277 MB -> 6085 MB
2019-08-15 20:17:36 +02:00
Bartosz Taudul
f5775a2d6e
Display list of CPUs on which zone was running.
2019-08-15 20:17:36 +02:00