Commit Graph

3792 Commits

Author SHA1 Message Date
Bartosz Taudul
3393471dcc
Draw memory plot ranges on top of plot. 2022-07-24 12:10:46 +02:00
Bartosz Taudul
a3b6a9c95c
Color plot background. 2022-07-24 01:39:51 +02:00
Bartosz Taudul
755df94f45
Move DarkenColor() to a proper source file. 2022-07-24 01:29:52 +02:00
Bartosz Taudul
27a98a3cc2
Make user plot color depend on its name. 2022-07-24 01:26:20 +02:00
Bartosz Taudul
a98bbc2340
Display plot color in plot tooltip. 2022-07-24 01:12:42 +02:00
Bartosz Taudul
7d1539a0ce
Plot coloring, currently by type. 2022-07-24 01:07:10 +02:00
Bartosz Taudul
5bee753376
Add source preview to lock info window source location. 2022-07-24 00:18:57 +02:00
Bartosz Taudul
0a00925a9b
More compact locks drawing. 2022-07-24 00:13:11 +02:00
Bartosz Taudul
efaf1df8d4
Move LockMap and LockHighlight definitions. 2022-07-23 15:54:48 +02:00
Bartosz Taudul
f7598d2431
Implement direct children search. 2022-07-23 13:31:41 +02:00
Bartosz Taudul
57f03dfe9a
Implement children messages filtering in zone tooltip. 2022-07-23 13:19:30 +02:00
Bartosz Taudul
4d40a9cb53
Track locking thread on server side. 2022-07-18 02:06:19 +02:00
Bartosz Taudul
06c7984a16
Move all client headers and sources to public/ directory. 2022-07-17 15:47:38 +02:00
Bartosz Taudul
b70321fe6a
Add protocol -> version mapping table. 2022-07-13 00:44:02 +02:00
Bartosz Taudul
0624c592e3
Advise about slow send queue. 2022-07-03 15:14:53 +02:00
Bartosz Taudul
edad2d7e35
Monitor send queue size. 2022-07-03 14:52:18 +02:00
Bartosz Taudul
71b3706486
Increase contrast on timeline CPU data CPU labels. 2022-07-03 13:04:09 +02:00
Bartosz Taudul
6748756fa1
Increase contrast of plot min/max labels. 2022-07-03 13:01:41 +02:00
Bartosz Taudul
f8f76a3d04
Text drawing with even more increased contrast. 2022-07-03 13:01:41 +02:00
Bartosz Taudul
c2a9a4e6be
Add missing includes. 2022-07-02 17:13:20 +02:00
Bartosz Taudul
2331ee04d2
Cleanup TracyView includes. 2022-07-02 17:00:08 +02:00
Bartosz Taudul
96dc8c8d1c
No need to include imgui.h in source view header. 2022-07-02 16:33:45 +02:00
Bartosz Taudul
1879d07eae
TracyImGui.hpp does not need assert.h nor algorithm includes. 2022-07-02 16:29:37 +02:00
Bartosz Taudul
4347cc58b1
Forward declare ImFont. 2022-07-02 16:25:47 +02:00
Bartosz Taudul
a46d3992a2
Thread view adjustment is timeline handling. 2022-07-02 15:44:00 +02:00
Bartosz Taudul
d9ce848bb0
Also extract (and rename) timeline mouse handling. 2022-07-02 15:42:01 +02:00
Bartosz Taudul
889e643d2a
Extract ranges UI from View. 2022-07-02 15:40:51 +02:00
Bartosz Taudul
9fb618c12d
Rename DrawZone* -> DrawTimeline*. 2022-07-02 15:38:10 +02:00
Bartosz Taudul
e3b11821c3
Extract zone timeline rendering from View. 2022-07-02 15:36:36 +02:00
Bartosz Taudul
7b04d8c0b3
Extract frames timeline UI from View. 2022-07-02 15:31:03 +02:00
Bartosz Taudul
0d41a6c48b
Move DrawHistogramMinMaxLabel() to TracyImGui.cpp. 2022-07-02 15:27:08 +02:00
Bartosz Taudul
5ed7d71927
DrawAllocList() is memory. 2022-07-02 15:24:59 +02:00
Bartosz Taudul
c2728fde04
Extract locks UI from View. 2022-07-02 15:24:09 +02:00
Bartosz Taudul
10205f90b4
Also extract timeline CPU data. 2022-07-02 15:20:47 +02:00
Bartosz Taudul
c6b6cb47da
Also move timeline samples. 2022-07-02 15:16:52 +02:00
Bartosz Taudul
e005d4ff36
Extract messages UI from View. 2022-07-02 15:15:24 +02:00
Bartosz Taudul
fe8269fa49
Mark syntax colors constexpr. 2022-07-02 15:10:01 +02:00
Bartosz Taudul
87d639c851
Move DrawStripedRect() out of header. 2022-07-02 15:08:52 +02:00
Bartosz Taudul
c427214f46
Move DrawHelpMarker to TracyImGui.hpp. 2022-07-02 15:07:40 +02:00
Bartosz Taudul
358148920a
Extract annotations UI from View. 2022-07-02 15:04:54 +02:00
Bartosz Taudul
5b451c3557
Extract samples UI from View. 2022-07-02 15:04:53 +02:00
Bartosz Taudul
06a840c19a
Wait stacks are context switches. 2022-07-02 15:01:23 +02:00
Bartosz Taudul
585587fa36
Extract frame tree functionality from View. 2022-07-02 15:01:22 +02:00
Bartosz Taudul
8147eadaf0
Extract connection state and notification area. 2022-07-02 14:47:13 +02:00
Bartosz Taudul
de5c4c678a
Extract memory UI from View. 2022-07-02 14:42:06 +02:00
Bartosz Taudul
f3fe8b27e8
Extract plot drawing from View. 2022-07-02 14:36:54 +02:00
Bartosz Taudul
e98b24a9ed
Extract frame overview UI from View. 2022-07-02 14:19:16 +02:00
Bartosz Taudul
b58a206d9d
More utility extract. 2022-07-02 14:14:27 +02:00
Bartosz Taudul
701cc16cbf
Zone tooltip is zone info. 2022-07-02 14:10:36 +02:00
Bartosz Taudul
003621802f
Split callstack UI from View. 2022-07-02 14:09:15 +02:00
Bartosz Taudul
5a3305095e
Extract CPU data UI from View. 2022-07-02 14:04:45 +02:00
Bartosz Taudul
6f99c8d055
Extract trace info UI from View. 2022-07-02 14:03:01 +02:00
Bartosz Taudul
ee18e07d6f
Cosmetics. 2022-07-02 13:59:54 +02:00
Bartosz Taudul
1aeb1d9a2d
More find zones extraction. 2022-07-02 13:58:37 +02:00
Bartosz Taudul
a6cee9e7f7
Extract statistics UI from View. 2022-07-02 13:57:56 +02:00
Bartosz Taudul
749bab7ab0
Extract playback UI from View. 2022-07-02 13:55:45 +02:00
Bartosz Taudul
44e5218301
Extract more utility functions. 2022-07-02 13:51:50 +02:00
Bartosz Taudul
35f55c781b
Extract compare UI from View. 2022-07-02 13:48:54 +02:00
Bartosz Taudul
7ed1c4ffb1
More navigation extraction. 2022-07-02 13:43:46 +02:00
Bartosz Taudul
10dbefefab
Extract context switch UI from View. 2022-07-02 13:43:09 +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
5b8c8c5309
Extract common zone algorithms from View. 2022-07-02 13:12:30 +02:00
Bartosz Taudul
2473760c04
Extract Find Zone UI to a separate file. 2022-07-02 13:12:29 +02:00
Bartosz Taudul
dd6933fe32
Fix striped rect early exit test. 2022-06-29 01:39:06 +02:00
Bartosz Taudul
e6c54600f1
Fix typo. 2022-06-29 01:32:02 +02:00
Bartosz Taudul
a8511d3576
Release 0.8.2. 2022-06-28 17:57:46 +02:00
Bartosz Taudul
68de009e0e
Extract common reference time processing to a function. 2022-06-22 01:56:31 +02:00
Bartosz Taudul
183cbf12a0
Subtract base time directly in TscTime(). 2022-06-22 01:56:31 +02:00
Bartosz Taudul
ac1cd62847
Remove unused intrinsic includes. 2022-06-22 00:49:51 +02:00
Bartosz Taudul
1468522126
Replace CPU topology tree with CPU schematics. 2022-06-21 00:45:42 +02:00
Bartosz Taudul
2f6399a4b2
Display true values in plot ranges, not animation values. 2022-06-19 00:39:14 +02:00
Bartosz Taudul
331f18345f
Add braces around initialization of subobjects. 2022-06-16 15:29:39 +02:00
Ben Vanik
aa154792c7 Hiding the "Incomplete context switch data" warning on fibers. 2022-06-14 08:01:19 -07: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
Pavel Šmejkal
2c63d9b320 Fix crash when compare trace not selected 2022-05-20 09:26:50 +02:00
Bartosz Taudul
bdd4d28770
Extend max asm line width, if needed. 2022-05-09 00:44:45 +02:00
Bartosz Taudul
76f3207bc4
Restore the intended spacing for extra asm comments. 2022-05-09 00:37:59 +02:00
Bartosz Taudul
a354eb4ab8
Merge pull request #381 from bjacob/fix-layout-379
Fix layout bug (https://github.com/wolfpld/tracy/issues/379)
2022-05-04 21:48:34 +02:00
Benoit Jacob
2c4fe22f50 Fix layout bug (https://github.com/wolfpld/tracy/issues/379)
I had introduced this bug recently in https://github.com/wolfpld/tracy/pull/369

Fixes #379
2022-05-04 16:26:42 +00:00
Bartosz Taudul
8bf21bfb81
Update microarchitecture CPU ids. 2022-05-03 22:15:12 +02:00
Bartosz Taudul
45a4dc154a
Update microarchitectures list. 2022-05-03 22:01:50 +02:00
Bartosz Taudul
60c9b50f81
Update microarchitecture data. 2022-05-03 21:58:23 +02:00
Bartosz Taudul
579339dd24
Retrieve correct symbol address. 2022-05-02 01:12:35 +02:00
Bartosz Taudul
85e11c2d97
Merge two conditions. 2022-05-02 01:12:35 +02:00
Bartosz Taudul
caf092d4b4
Symbol map is alway available. 2022-05-02 01:12:34 +02:00
Bartosz Taudul
aa2bbfe5f9
Transfer executable image name in source file queries. 2022-05-01 14:30:18 +02:00
Bartosz Taudul
fd55c1e975
Pass symbol image name to CacheSource(). 2022-05-01 14:25:07 +02:00
Bartosz Taudul
33a6853423
Use big font to print save path. 2022-05-01 13:04:16 +02:00
Bartosz Taudul
4c0dd704d8
There are situations in which inSym can be nullptr.
Don't know exactly how to reproduce this. Nevertheless, the capture was
produced in an usual way. This may be dependant on the exact client
configuration.
2022-04-29 19:13:34 +02:00
Bartosz Taudul
fc37f3c04c
Remove leftovers. 2022-04-29 19:13:26 +02:00
Bartosz Taudul
1b7e8c3520
Use ImGui keycodes. 2022-04-27 01:16:46 +02:00
Bartosz Taudul
95cf143336
Remove unused variables. 2022-04-26 22:01:09 +02:00
Bartosz Taudul
c9240c100d
Fix initialization order. 2022-04-26 22:01:09 +02:00
Bartosz Taudul
066c266df9
Add missing includes. 2022-04-26 22:01:09 +02:00
Bartosz Taudul
1f3ebc9f41
Use item spacing instead of ExtraLineHeight. 2022-04-26 21:11:38 +02:00
Bartosz Taudul
d56741cbeb
Stop pretending to not require additional fonts. 2022-04-25 23:29:44 +02:00
Bartosz Taudul
e0897e8e40
Draw wait reason/state explanation with small font. 2022-04-25 03:05:12 +02:00
Bartosz Taudul
37a4478127
Fix horizontal scroll of main window.
Horizontal mouse scroll (or touchpad action) should map to navigation within
the trace. While this was true in most cases, there was an edge case, when the
top buttons row couldn't be entirely displayed, e.g. due to the window being
resized too small, or due to set zoom level. This change disables scroll
action on the main window, which fixes the issue.
2022-04-22 22:38:05 +02:00
Bartosz Taudul
6f126ce0f5
Stop playback when frame is changed with mouse scroll. 2022-04-22 22:02:04 +02:00
Bartosz Taudul
9757fcc0ef
Mouse scroll over playback image also changes frame. 2022-04-22 22:02:03 +02:00
Bartosz Taudul
80f6a93da7
Release 0.8.1. 2022-04-21 19:28:07 +02:00
bjacob
e6a29862ec
Fix column widths for hw counts and source location (#369)
Fix column widths for hw counts and source location
2022-04-21 18:30:55 +02:00
Bartosz Taudul
a852cf390a
Adapt code to new NFD. 2022-04-20 19:40:27 +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
18112d3c66
Drop support for pre-0.7 traces. 2022-04-18 13:59:48 +02:00
Bartosz Taudul
95187c94e9
Bump protocol to simplify IsQueryPrio(). 2022-04-18 13:39:49 +02:00
Bartosz Taudul
5eb724f34c
Add touchpad support for frames overview. 2022-04-13 01:37:56 +02:00
Bartosz Taudul
1fd39e90b9
Implement navigation from jump arrow context menu. 2022-04-06 23:41:46 +02:00
Bartosz Taudul
0e56397c5a
Don't show empty menu when source is not available. 2022-04-06 23:34:30 +02:00
Bartosz Taudul
7893a83633
Display jump arrow context (src and target source code). 2022-04-06 02:01:29 +02:00
Bartosz Taudul
db3736983a
Always open jump arrow context menu. 2022-04-06 02:01:07 +02:00
Bartosz Taudul
4555910536
Extract source fragment printing functionality. 2022-04-06 01:54:14 +02:00
Bartosz Taudul
1b3464a386
Fix wrong source color box. 2022-04-06 01:42:13 +02:00
Bartosz Taudul
e34d79c0c7
Display target location for local jumps. 2022-04-06 01:23:35 +02:00
Bartosz Taudul
2fc64fceba
Select appropriate branch cost, if no retirement data. 2022-04-01 19:09:56 +02:00
Bartosz Taudul
88a153504d
Show branch impact if no retirement data available.
Some CPUs are only able to report branch miss data, but not branch retirement
data.
2022-04-01 19:06:15 +02:00
Bartosz Taudul
d8ec98042a
Add branch retirement state accessor. 2022-04-01 18:48:11 +02:00
Bartosz Taudul
381f706796
Remember if there is branch retirement data. 2022-04-01 18:46:46 +02:00
Bartosz Taudul
2b47c2a64e
Send priority queries before other queued up queries.
This ensures that simple to handle yet important queries are answered in a
timely manner. Previously an onslaught of slow symbol-related queries could
block e.g. zone name resolving for a couple of minutes.
2022-03-31 00:06:49 +02:00
Bartosz Taudul
5ae9e791a5
Make easy check first. 2022-03-31 00:06:49 +02:00
Bartosz Taudul
d691cb2a06
Define a list of priority queries. 2022-03-31 00:02:02 +02:00
Bartosz Taudul
a335efe9e6
Implement scanning for source files missing in cache. 2022-03-30 16:07:15 +02:00
Bartosz Taudul
e086488928
Extract source file caching functionality. 2022-03-30 16:06:35 +02:00
Bartosz Taudul
9ba7171c3d
Release 0.8.0. 2022-03-28 21:20:44 +02:00
Bartosz Taudul
f1fea0331a
Merge pull request #344 from thedmd/callstack_table-clipboard_full_location
In callstack table view, copy full location with line to clipboard
2022-03-19 15:37:59 +01:00
thedmd
dc79ae6fea In callstack table view, copy location with line to clipboard instead just location. 2022-03-19 09:48:48 +01:00
Bartosz Taudul
fdee87b0ae
Update robin_hood to 3.11.5. 2022-03-18 02:01:46 +01:00
Bartosz Taudul
7d14aac137
Set focus on input field when find zone window appears. 2022-03-18 01:47:58 +01:00
Bartosz Taudul
dc874a732e
Merge pull request #339 from voysys/fix-server-assertion-crash
Ignore uninitialized GPU contexts when rendering GPU events
2022-03-17 18:54:34 +01:00
Bartosz Taudul
8483ef4310
Indicate currently selected annotation. 2022-03-15 17:36:01 +01:00
Bartosz Taudul
4be2aa0682
Allow adding full-view annotations. 2022-03-15 17:26:12 +01:00
Bartosz Taudul
ba4b261ae4
Make the annotations list always accessible. 2022-03-15 17:25:52 +01:00
Bartosz Taudul
f17a579753
Move adding annotations to a separate function. 2022-03-15 17:25:28 +01:00
Bartosz Taudul
42688c9bf3
Add id to annotation description input box. 2022-03-15 17:24:53 +01:00
Thomas Bernard
79e146c957 Avoid accessing address 0 when reporting a failure. 2022-03-10 14:28:31 +01:00
Niclas Olmenius
2c79194e7d Ignore uninitialized GPU contexts when rendering GPU events
This fixes an assertion crash when viewing GPU zones when no zones have been
recorded on a GPU context if the client is compiled with TRACY_ON_DEMAND
2022-03-09 19:20:56 +01:00
Bartosz Taudul
efe22461cc
Implement going to parent zone in find zone window. 2022-03-03 15:39:07 +01:00
Bartosz Taudul
361782f3fd
Fix edge case triggered by mouse being out-of-window. 2022-01-29 15:53:50 +01:00
Bartosz Taudul
df96293477
Create GPU source location zones stats entry, if not present.
In case of CPU statistics data, this entry is created during creation of a
source location. This won't be done for GPU zones, as it would needlessly
expand the number of held entries. This is assuming the number of GPU zones
is significantly less than the number of CPU zones.
2022-01-29 15:45:25 +01:00
Bartosz Taudul
f4043d9bb8
Display GPU zone statistics. 2022-01-29 15:35:25 +01:00
Bartosz Taudul
45c7edcc96
GPU source locations zones data accessor. 2022-01-29 15:22:49 +01:00
Bartosz Taudul
6d55f79109
Save source location data counts. 2022-01-29 15:14:43 +01:00
Bartosz Taudul
2ca4b0058a
Add AreGpuSourceLocationZonesReady() query. 2022-01-29 00:51:43 +01:00
Bartosz Taudul
ba87929074
Perform GPU statistics reconstruction.
Note: Zone counts are currently being calculated, but they are not being
saved. Proper usage of this data (as is performed in the CPU counterpart)
would remove the possibility of insertion of new entries into the map in
ReconstructZoneStatistics().
2022-01-29 00:48:01 +01:00
Bartosz Taudul
7870ca9da6
Add GPU mutable children accessor. 2022-01-29 00:40:11 +01:00
Bartosz Taudul
7a1b9efc2f
Add GPU statistics radio button. 2022-01-29 00:33:53 +01:00
Bartosz Taudul
28d029f820
Collection of GPU statistics. 2022-01-29 00:15:33 +01:00
Bartosz Taudul
f9279afaec
GPU zone counting. 2022-01-29 00:15:32 +01:00