Commit Graph

3566 Commits

Author SHA1 Message Date
Bartosz Taudul
db64a5fa7e
Explicitly save context switch callstack samples. 2021-12-21 15:24:11 +01:00
Bartosz Taudul
67c2ffcb17
Look for context switch stacks on both ends of a switch. 2021-12-21 14:36:47 +01:00
Bartosz Taudul
c5654c333a
Process explicit context switch callstack samples. 2021-12-21 14:18:32 +01:00
Bartosz Taudul
3f1c540b3a
Further split ProcessCallstackSampleImpl(). 2021-12-21 14:18:14 +01:00
Bartosz Taudul
d88bf2c7a8
Separate message type for context switch callstack samples. 2021-12-21 14:05:07 +01:00
Bartosz Taudul
9b624049a5
Immediately disconnect connection on disconnect request.
The disconnect handling logic is broken on the client, after the symbol
resolution was moved to a separate thread. Use workaround until a proper fix
is available.
2021-12-11 13:15:50 +01:00
Bartosz Taudul
d7dc2d6127
Extend process state descriptions, add P (parked). 2021-12-05 01:32:33 +01:00
Bartosz Taudul
bbbae35925
Only identify samples when IdentifySamples is set. 2021-12-04 15:16:17 +01:00
Bartosz Taudul
c98680ad0b
Add support for sample data without time. 2021-12-02 02:06:05 +01:00
Bartosz Taudul
6579399bfd
Update xxHash to 0.8.1. 2021-12-01 21:52:31 +01:00
Bartosz Taudul
1a0cf3ff46
Update robin_hood to 3.11.3. 2021-12-01 21:44:56 +01:00
Bartosz Taudul
899b466ba4
There is more than one wait stack. 2021-11-29 19:34:43 +01:00
Bartosz Taudul
5c379603b5
Move onlyActive check out of the loops. 2021-11-29 19:23:31 +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
f3ee2235f6
Enable sample parents selection for self-less symbols. 2021-11-27 18:12:06 +01:00
Bartosz Taudul
05f9c74170
Don't include inlines when separate inlines are enabled. 2021-11-27 18:05:05 +01:00
Bartosz Taudul
582fcd5538
Fix sample parents for the whole symbol.
Previously when whole symbol was selected, it wasn't. All the inlines were
ignored and the data was displayed only for the base (self) symbol.
2021-11-27 17:55:18 +01:00
Bartosz Taudul
d8a611e952
Also calculate sample parents without inlines. 2021-11-27 17:47:09 +01:00
Bartosz Taudul
687d4defc0
Cosmetics. 2021-11-27 17:46:43 +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
a84fd26ecb
Change toggle button to faux drop down. 2021-11-27 15:40:23 +01:00
Bartosz Taudul
355a179678
Merge callstack samples with the same timestamp. 2021-11-27 15:29:33 +01:00
Bartosz Taudul
4f735e1ae2
Extract callstack merging. 2021-11-27 15:06:58 +01:00
Bartosz Taudul
58d5fb2ff4
Fix calculation of child sample counts. 2021-11-27 14:49:22 +01:00
Bartosz Taudul
702c87dad0
Display list of child calls. 2021-11-27 14:43:31 +01:00
Bartosz Taudul
6a7b4e6066
Add calculation of child stats to source view. 2021-11-27 14:42:23 +01:00
Bartosz Taudul
85f755f3f5
Use proper base symbol address. 2021-11-27 14:30:46 +01:00
Bartosz Taudul
a02575322f
Collect child sample addresses. 2021-11-27 02:03:59 +01:00
Bartosz Taudul
4bde9022e1
Properly acknowledge unavailable symbol code. 2021-11-25 22:44:56 +01:00
Bartosz Taudul
abdd6020ba
No need to remember addresses of symbol code queries. 2021-11-25 22:35:43 +01:00
Bartosz Taudul
b4da047355
Don't filter out kernel symbols from code transfer. 2021-11-25 22:28:05 +01:00
Bartosz Taudul
ac331d0343
Fix one frame lag of out-of-trace dimming. 2021-11-22 01:19:37 +01:00
Bartosz Taudul
6c08943e66
Don't perform any work in collapsed windows. 2021-11-22 01:15:22 +01:00
Bartosz Taudul
b3562c99fb
Display jump target/source function names. 2021-11-20 14:50:26 +01:00
Bartosz Taudul
7b2ed41179
Push small font to SourceView. 2021-11-20 14:47:13 +01:00
Bartosz Taudul
f0d524ad1f
Don't pass font to SourceView ctor. 2021-11-20 14:44:22 +01:00
Bartosz Taudul
3e78c826cf
Adapt minimum samples distance to DPI scaling. 2021-11-20 13:51:42 +01:00
Bartosz Taudul
8d65b190d6
Handle frame image dictionary creation failures. 2021-11-20 03:30:28 +01:00
Bartosz Taudul
b4dab753e6
List jump source locations. 2021-11-20 02:30:49 +01:00
Bartosz Taudul
fbe85ff8d3
Adapt hotness indicators to DPI scale. 2021-11-20 02:19:50 +01:00
Bartosz Taudul
0f215c7393
Keep text shadow offset constant.
ImGui aligns the text to be pixel perfect. Fractional offset of shadow made it
move not in sync with the text proper.
2021-11-20 01:55:47 +01:00
Bartosz Taudul
261721b8a3
Don't provide number of segments to generate in a circle. 2021-11-20 01:46:34 +01:00
Bartosz Taudul
dd6a973fbe
Adapt context switch line size to DPI scale. 2021-11-20 01:46:14 +01:00
Bartosz Taudul
a075323a80
Draw smaller "inline" index in callstacks. 2021-11-20 01:36:05 +01:00
Bartosz Taudul
b8766ad5d7
Apply DPI scale to text shadow. 2021-11-20 01:24:37 +01:00
Bartosz Taudul
be9cbfc3e2
Move GetScale() to TracyImGui.hpp. 2021-11-20 01:21:06 +01:00
Bartosz Taudul
d0d0aca758
Use font helpers. 2021-11-19 21:09:13 +01:00
Bartosz Taudul
e0a6c51a2f
Add font set/unset helpers. 2021-11-19 21:06:07 +01:00
Bartosz Taudul
dd8083e0ee
Prevent out-of-bounds access.
This fixes the issue when assembly view is scrolled to the bottom of the
screen and display scale is reduced by the user. In such case clipper will
report DisplayStart to be at the end element, which would cause out-of-bounds
access to the m_asm array.

Clipper self-fixes this in the next frame, so this workaround is enough.
2021-11-19 20:58:09 +01:00
Bartosz Taudul
c23abca979
Round jump arrows offsets. 2021-11-19 20:56:09 +01:00
Bartosz Taudul
fdadb9cb63
Update source view font. 2021-11-18 23:03:17 +01:00
Bartosz Taudul
f3ea9e1314
Add run-time UI scaling menu. 2021-11-18 22:48:32 +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
01a0363c29
Adapt item width to DPI scale. 2021-11-18 20:33:44 +01:00
Bartosz Taudul
0b869bcb13
Adapt network graph to DPI scale. 2021-11-18 20:12:41 +01:00
Bartosz Taudul
1dff4329e4
Adapt window sizes to DPI scaling. 2021-11-18 19:20:45 +01:00
Bartosz Taudul
4d397aeb67
Add helper for getting DPI scaling. 2021-11-18 19:04:21 +01:00
Bartosz Taudul
1002e949d6
Enable playback frame change with mouse wheel. 2021-11-15 02:34:13 +01:00
Bartosz Taudul
176bc279f1
Don't copy short_ptr. 2021-11-15 02:18:19 +01:00
Bartosz Taudul
641338cb3c
Remove postponed samples when they are handled. 2021-11-14 23:55:44 +01:00
Bartosz Taudul
bb30333947
Implement erase() in SortedVector.
Requires vector to be sorted, in order to not bother with recalculating
sortedEnd value.
2021-11-14 23:54:39 +01:00
Bartosz Taudul
710a488af0
Handle postponed samples with SortedVector. 2021-11-14 23:48:50 +01:00
Bartosz Taudul
f2380590f9
Limit server query space to 8K entries.
In the default configuration this limit is unlikely to be hit. On Windows the
send buffer is 64 KB, which results in ~5K entries. On Linux the buffer is a
bit higher and the number of entries is lower than 7K.
2021-11-14 18:14:52 +01:00
Bartosz Taudul
0e05d70691
Remove obsolete check. 2021-11-14 17:09:37 +01:00
Bartosz Taudul
ffa8bf4d75
Use table instead of map to track reentrant calls. 2021-11-14 16:42:11 +01:00
Bartosz Taudul
cb004e9cc0
Sort source location zones only when needed. 2021-11-14 16:05:55 +01:00
Bartosz Taudul
befeffb61e
Add ensure_sorted() method for SortedVector. 2021-11-14 15:57:20 +01:00
Bartosz Taudul
404168ec69
Check whether symbols are ready, not source locations. 2021-11-14 15:51:29 +01:00
Bartosz Taudul
e0872ce61b
Cosmetics. 2021-11-14 15:51:27 +01:00
Bartosz Taudul
864d7e4e47
Sort symbols list only when actually needed. 2021-11-14 13:05:05 +01:00
Bartosz Taudul
b978a7c652
Sort plot data only when needed (i.e. to draw). 2021-11-14 13:01:27 +01:00
Bartosz Taudul
50e532ebc0
Display unknown locations dimmed in callstack trees. 2021-11-14 02:27:43 +01:00
Bartosz Taudul
19f87502d3
Keep wait stacks header on top. 2021-11-14 02:17:02 +01:00
Bartosz Taudul
2040ef945f
Color kernel frames in callstack trees. 2021-11-14 02:06:22 +01:00
Bartosz Taudul
014f084393
UI cosmetics. 2021-11-13 22:27:54 +01:00
Bartosz Taudul
41c5d93a11
Use big icons in the rest of dialogs. 2021-11-13 22:23:18 +01:00
Bartosz Taudul
be264896f0
Use big icons in bad version dialogs. 2021-11-13 22:20:00 +01:00
Bartosz Taudul
d4a5df0244
Use big icon in waiting for connection dialog. 2021-11-13 22:14:47 +01:00
Bartosz Taudul
1d7ab70199
Non-memory tree callstacks are not needed. 2021-11-13 22:09:16 +01:00
Bartosz Taudul
b4726833e9
Cosmetics. 2021-11-13 22:09:10 +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
98edee9b07
Change memory call stack tree icons. 2021-11-13 20:42:52 +01:00
Bartosz Taudul
667112c71f
Some old traces might have invalid image names. 2021-11-13 20:34:54 +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
265a39e7c9
Don't select out-of-context asm lines. 2021-11-13 17:35:02 +01:00
Bartosz Taudul
50627646c1
Don't highlight asm lines out of context on hover. 2021-11-13 16:36:46 +01:00
Bartosz Taudul
25316ddada
Display notification icon when context is limited. 2021-11-13 16:34:51 +01:00
Bartosz Taudul
cc425c4a2d
Separate function for checking asm function context. 2021-11-13 16:34:50 +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
c1f6d6c9ce
Cosmetics. 2021-11-13 15:39:37 +01:00
Bartosz Taudul
14b469f219
Direct selection of find zone callstack. 2021-11-13 15:31:48 +01:00
Bartosz Taudul
151eadc69e
Direct selection of sample entry call stack index. 2021-11-13 15:15:49 +01:00