Bartosz Taudul
0b190b1a69
Calculate sum of values in reconstructed memory plot.
2021-10-17 13:14:23 +02:00
Bartosz Taudul
04db76d5fd
Calculate plot values sum during data import.
2021-10-17 13:07:37 +02:00
Bartosz Taudul
facd2be33b
Display average plot value.
2021-10-17 13:05:10 +02:00
Bartosz Taudul
0bd1364c2f
Calculate plot values sum.
2021-10-17 13:04:56 +02:00
Bartosz Taudul
a1511a39bd
Delta-encode code information pointers.
2021-10-16 16:29:06 +02:00
Bartosz Taudul
dfb1ce64df
Sample data inconsistency warning.
2021-10-16 16:15:19 +02:00
Bartosz Taudul
bcaac7b53f
Add ~2 second overflow grace period.
...
This fixes issues when the GPU is actually permitted to report out-of-order
timestamps (e.g. when tasks are scheduled by the GPU, instead of being forced
to execute in submission order).
2021-10-11 00:29:24 +02:00
Bartosz Taudul
d3905bd4bb
Add context to zone text failures.
2021-10-10 14:14:33 +02:00
Bartosz Taudul
930ef77ea9
Add zone value failure context.
2021-10-10 14:12:13 +02:00
Bartosz Taudul
9300934fa5
Separate zone value and text failures.
2021-10-10 14:05:21 +02:00
Bartosz Taudul
07bc665d8c
Drop support for Cygwin.
2021-10-07 23:28:40 +02:00
Bartosz Taudul
b7a27d02af
Fix total time in find zone, if limit range is enabled.
2021-09-28 01:11:22 +02:00
Bartosz Taudul
9cb54982cb
Fix crash.
2021-09-27 18:13:45 +02:00
Bartosz Taudul
c2e94355f0
Add icon to samples label.
2021-09-27 02:07:02 +02:00
Bartosz Taudul
99f2d0e059
Fix vertical spacing in inline symbols list.
2021-09-27 01:54:37 +02:00
Bartosz Taudul
28ae970887
Remove trailing whitespace.
2021-09-27 01:54:15 +02:00
xavier
f37ef1affd
Display the samples after the groups in the "find zone" window
...
to make it clear they are filtered by selected group.
2021-09-23 21:03:56 +02: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
1233b39b69
Move samples before groups in "find zone" window
...
and fix style
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
e4ce9f0f41
Include threadid in SampleDataRange
...
TODO: maybe make lists per thread to avoid increasing the packed structure by 2 bytes?
2021-09-23 21:03:56 +02:00
xavier
6b901a7156
Extract DrawSamplesStatistics()
2021-09-23 21:03:56 +02:00
Bartosz Taudul
4c220bdc14
Always display statistics mode selection.
...
Even if only one option is available.
2021-09-23 18:32:59 +02:00
Bartosz Taudul
f74818ece5
Make accumulation combo consistent.
2021-09-23 18:28:19 +02:00
Bartosz Taudul
bcfc4a4fa7
Fix message thread assignment in import-chrome.
2021-09-23 18:08:03 +02:00
Bartosz Taudul
dfb4020a92
Add missing include for intptr_t.
2021-08-22 13:38:28 +02:00
Bartosz Taudul
673dfd0f02
Update ImGui GLFW and OpenGL 3.x backends.
...
The new embedded ImGui OpenGL loader has been extended with a couple of
functions and definitions needed by TracyTexture.cpp.
2021-08-22 13:30:46 +02:00
Bartosz Taudul
30445b656f
Update ImGui to 1.84.1 + docking.
2021-08-21 00:52:30 +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
Bartosz Taudul
7304558bdf
Cycle through assembly blocks when right-clicking source line.
2021-07-26 01:21:58 +02:00
Bartosz Taudul
55a966f9c6
Fix assert.
2021-07-26 01:18:17 +02:00
Bartosz Taudul
06ae39d9cc
Fix debug build.
2021-07-18 16:34:24 +02:00
Bartosz Taudul
8b489c95ff
Rename slow branches/cache to branch/cache impact.
2021-07-18 16:15:32 +02:00
Bartosz Taudul
0e603a0997
Render relative hw samples values.
2021-07-18 16:15:32 +02:00
Bartosz Taudul
d0fad4fd39
Rename relative hw samples to "impact".
2021-07-18 16:15:31 +02:00
Bartosz Taudul
83b159b43b
Count hw stats, if relative mode is set.
2021-07-18 15:00:22 +02:00
Bartosz Taudul
fbf2c87a20
Include hw stats in AddrStatData.
2021-07-18 15:00:22 +02:00
Bartosz Taudul
e30608afbf
Store and pass AddrStat data in one data structure.
2021-07-18 15:00:22 +02:00
Bartosz Taudul
9c7a122d94
Implement counting relative hw samples data.
...
This exploits the fact that AddrStat has two data fields (local and ext) to
store branch and cache information.
2021-07-18 15:00:22 +02:00
Bartosz Taudul
8c78af4d00
Drop limitView from GatherIpHwStats interface.
2021-07-18 15:00:21 +02:00
Bartosz Taudul
a5e655d1ee
Add relative hw samples checkbox.
2021-07-18 15:00:21 +02:00
Bartosz Taudul
b4c1313a2e
Make hw stats cost a parameter.
2021-07-18 02:03:29 +02:00
Bartosz Taudul
50f7deb1a3
Merge pull request #243 from benvanik/patch-4
...
Indenting empty GPU zone tree nodes when grouped to keep zones aligned.
2021-07-17 20:48:43 +02:00
Ben Vanik
ba185b18f9
Indenting empty grouped CPU/GPU zone tree nodes to keep things aligned.
2021-07-17 11:46:29 -07:00
Ben Vanik
e3165c333b
Fixing unbalanced tree pop in grouped GPU zones.
2021-07-17 09:25:44 -07:00
Bartosz Taudul
edae542a48
Allow selecting image name for filtering from a list.
2021-07-11 19:43:51 +02:00
Bartosz Taudul
b6db644ac6
Add hasher and comparator for StringIdx.
2021-07-11 19:43:40 +02:00
Terence Rokop
68ec7abdf4
Move responsibility for spacing of combo box
...
Thereby fix a spurious horizontal separator bar.
2021-06-26 11:51:57 -07:00
Terence Rokop
d6fd252ce4
Add more spacing to pre-existing options
2021-06-26 10:41:24 -07:00
Terence Rokop
e105d2d96c
Aesthetic fixes to accumulation mode combo box
...
Shorter text fields and more spacing.
2021-06-26 10:41:23 -07:00
Terence Rokop
1dd117533e
Avoid non-reentrant option in sampling/symbol view
2021-06-26 10:41:23 -07:00
Terence Rokop
f000dce73f
Replace "enum class" switches with explicit casts
2021-06-26 08:30:15 -07:00
Terence Rokop
b392671a7a
Make time accumulation mode use combo box
2021-06-25 21:27:45 -07:00
Bartosz Taudul
9a22b8e83c
Cosmetics.
2021-06-23 20:43:46 +02:00
Bartosz Taudul
913463635a
Cosmetics.
2021-06-23 20:37:14 +02: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
66053e37f7
Add non-reentrant stats to SourceLocationZones
...
Extend SourceLocationZones with fields to track the count
and time of non-reentrant zone events -- that is, zone
events which were the only appearances (at the time) of
those zones on their threads' stacks.
2021-06-20 17:56:15 -07:00
Terence Rokop
c90e39e06e
Keep track of zone appearances on thread stacks
...
Start keeping track, using the previously-introduced
SrcLocCountMap, of the number of appearances of each zone
on each thread's stack at a given time.
2021-06-20 17:56:15 -07:00
Terence Rokop
1f0b4656f4
Introduce SrcLocCountMap
...
Add to ThreadData a map from source location to a counter,
which will be used to keep track of the number of
appearances of zones with the corresponding source locations
on each thread's stack.
2021-06-20 17:56:14 -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
0e0692b7f7
Don't display hw samples as time in selected lines summary.
2021-06-20 16:01:19 +02:00
Bartosz Taudul
e9aca02880
Make hw sample cost in source files relative to whole symbol.
2021-06-20 15:55:21 +02:00
Bartosz Taudul
846bde1a11
Narrow down search range.
2021-06-20 14:37:56 +02:00
Bartosz Taudul
15b42039bd
Add very early exit test.
2021-06-20 14:34:47 +02:00
Bartosz Taudul
d4b92e0fbe
Add early exit conditions.
2021-06-20 14:33:08 +02:00
Bartosz Taudul
a10d71b766
Switch loop order for better cache locality on the slow path.
2021-06-20 14:30:55 +02:00
Bartosz Taudul
a9a16b4d94
Narrow down search region.
2021-06-20 14:24:42 +02:00
Bartosz Taudul
22352dd29b
Select optimized path before entering loop.
2021-06-20 14:22:14 +02:00
Bartosz Taudul
5d86002f82
Calculate all CPU usage values in one go.
2021-06-20 14:19:18 +02:00
Bartosz Taudul
5efc03cdf9
Move cycles up in cost combo selector.
2021-06-20 12:50:13 +02:00
Bartosz Taudul
7e17c8643c
Don't show hw events as time.
2021-06-20 01:08:18 +02:00
Bartosz Taudul
bc4016e97c
Don't depend on callstack frames to match hw samples to source.
2021-06-20 01:01:29 +02:00
Bartosz Taudul
2f3ee594f0
Use square root to make slow branches and cache less spiky.
2021-06-20 00:50:14 +02:00
Bartosz Taudul
3305ea2775
Keep raw hw sample data visually separate.
2021-06-20 00:46:29 +02:00
Bartosz Taudul
07fe0a5447
Use enum for cost selection.
2021-06-20 00:45:39 +02:00
Bartosz Taudul
3cc69b221e
Select Zstd compression when Zstd level is changed.
2021-06-20 00:25:30 +02:00
Bartosz Taudul
80e1b0c2cf
Don't display hw samples as time in files list.
2021-06-20 00:14:19 +02:00
Bartosz Taudul
52708268fe
Store 64-bit integers in AddrStat.
2021-06-20 00:08:25 +02:00
Bartosz Taudul
4e6a1bae22
Don't display time for hw samples.
2021-06-20 00:04:08 +02:00
Bartosz Taudul
326a2a70d8
Add indirect hw statistics.
2021-06-20 00:01:37 +02:00
Bartosz Taudul
ad2b6e932b
Don't scroll cost combo list.
2021-06-20 00:01:21 +02:00
Bartosz Taudul
a5991036dc
Add more hw stats as cost.
2021-06-19 23:43:46 +02:00
Bartosz Taudul
c7b3d42852
Calculating cost in cycles and retirements.
2021-06-19 23:39:33 +02:00
Bartosz Taudul
90149641df
Reset cost selection when no samples.
2021-06-19 23:17:24 +02:00
Bartosz Taudul
8d52d2acfd
Disable inline context if no inline symbols available.
2021-06-19 21:40:30 +02:00
Bartosz Taudul
2e3241ba54
Restrict hardware samples to inline function context.
2021-06-19 20:50:06 +02:00
Bartosz Taudul
6cc844abee
Display inline symbol address.
2021-06-19 20:20:52 +02:00
Bartosz Taudul
748c22df8e
Darken assembly instructions which aren't in current context.
2021-06-19 20:11:53 +02:00
Bartosz Taudul
53111f9dd9
Save/load code symbol map.
2021-06-19 19:58:16 +02:00
Bartosz Taudul
8045ceee5d
Display function assigned to assembly line.
2021-06-19 19:52:33 +02:00
Bartosz Taudul
ec3ee09f09
Add inline symbols map accessors.
2021-06-19 19:13:34 +02:00
Bartosz Taudul
654331a8c8
Create code address -> symbol map.
2021-06-19 19:07:57 +02:00
Bartosz Taudul
cc0ca341bb
Add cost criteria selection UI.
2021-06-19 18:16:11 +02:00
Bartosz Taudul
7ad9cafefb
Add child call samples hints to the UI.
2021-06-19 17:41:29 +02:00
Bartosz Taudul
6e8d57bc98
Update context switches look.
2021-06-19 16:50:25 +02:00
Bartosz Taudul
c17a913cf5
Update zones look.
2021-06-19 16:43:56 +02:00
Bartosz Taudul
b91cd9148d
Add 2-segment line drawing wrapper.
2021-06-19 16:22:50 +02:00
Bartosz Taudul
188320db48
Simplify zone color data retrieval.
2021-06-19 16:20:35 +02:00
Bartosz Taudul
5e582ef057
Omit line number from source locations, if not known.
2021-06-19 12:47:55 +02:00
Bartosz Taudul
91f1845d92
Add LocationToString() helper.
2021-06-19 12:33:23 +02:00
Bartosz Taudul
c69cf5bd3f
Cosmetics.
2021-06-19 12:33:16 +02:00
Bartosz Taudul
8e5a53a191
Merge remote-tracking branch 'origin/master' into hw
2021-06-19 12:19:10 +02:00
Andrey Voroshilov
d4d77006ac
Fix a crash in Worker c-tor when converting certain JSON files
2021-06-19 01:12:41 -07:00
Bartosz Taudul
e1b68232dc
Better describe kernel ghost zones.
2021-06-19 01:40:05 +02:00
Bartosz Taudul
a96410547b
Display thread kernel time.
2021-06-17 01:56:16 +02:00
Bartosz Taudul
d49da69972
Count kernel samples.
2021-06-17 01:47:19 +02:00
Bartosz Taudul
d2ebe341f2
Allow filtering out kernel symbols from statistics view.
2021-06-16 01:43:09 +02:00
Bartosz Taudul
f145ca5897
Fix assert.
2021-06-16 01:39:43 +02:00
Bartosz Taudul
48fe6550a6
Kernel code is unreachable from user space.
2021-06-15 21:40:08 +02:00
Bartosz Taudul
5b642cad01
Implement combining sample callstacks.
...
This is required, because Windows will send two callstacks with the same
timestamp, one for kernel-space, second for user-space.
2021-06-15 02:25:12 +02:00
Bartosz Taudul
db1dc311b0
Add Int48 clearing function.
2021-06-15 02:04:32 +02:00
Bartosz Taudul
0fdd5ab01b
Extract callstack sample processing implementation.
2021-06-15 01:59:49 +02:00
Bartosz Taudul
891e1ac280
Read combine samples flag on server.
2021-06-15 01:33:43 +02:00
Bartosz Taudul
06dcdd342f
Combine flags in welcome message.
2021-06-15 01:26:50 +02:00
Bartosz Taudul
004681b02b
Merge remote-tracking branch 'origin/master' into hw
2021-06-14 23:54:34 +02:00
Bartosz Taudul
39e317f36d
Fix display of messages with newlines.
2021-06-14 23:51:41 +02:00
Bartosz Taudul
2d2a5c92fd
Increase symbol retrieval size limit to 128 KB.
2021-06-13 01:16:29 +02:00
Bartosz Taudul
f773e18375
Different color for kernel frames in callstacks.
2021-06-12 16:16:56 +02:00
Bartosz Taudul
0c13889589
Distinguish kernel symbols on statistics list.
2021-06-12 16:09:44 +02:00
Bartosz Taudul
be07ccc1d3
Kernel symbols don't have parents.
2021-06-12 16:09:43 +02:00
Bartosz Taudul
3968945e6a
Display kernel ghost zones with a different color.
2021-06-12 15:35:44 +02:00
Bartosz Taudul
ff54c29913
Save/load GPU timer overflow information.
2021-06-09 21:12:50 +02:00
Bartosz Taudul
9e28f441c8
Cosmetics.
2021-06-09 21:12:42 +02:00
Bartosz Taudul
27e61b8204
Remove not needed check.
2021-06-09 21:08:48 +02:00
Bartosz Taudul
7aa575fd2e
Display GPU timer overflow notification.
2021-06-09 21:08:48 +02:00
Bartosz Taudul
de2ca9b22a
Change check for showing GPU timestamp accuracy.
2021-06-09 21:08:48 +02:00
Bartosz Taudul
b7b9912b10
Handle GPU timer overflows with heuristics.
2021-06-09 21:08:47 +02:00
Bartosz Taudul
90b51568e9
Add common lzcnt implementation.
...
Not really tested, so fingers crossed.
2021-06-09 20:29:43 +02:00
Bartosz Taudul
9c2ea8a71f
Specify minimum length of subframe skip in one place.
2021-06-09 02:13:00 +02:00
Bartosz Taudul
85da04bcc4
Add hw samples line part to source view.
2021-06-09 00:19:17 +02:00
Bartosz Taudul
def9570eda
Extract rendering hw samples line part.
2021-06-09 00:19:17 +02:00
Bartosz Taudul
18cace42ca
Display hw samples tooltip for source lines.
2021-06-08 23:46:30 +02:00
Bartosz Taudul
82bfee5127
Move helper functions to top of the file.
2021-06-08 23:46:29 +02:00
Bartosz Taudul
2eb50bcf42
Hardware sample data was already queried.
2021-06-08 23:46:29 +02:00
Bartosz Taudul
66318bdb3b
Display target FPS also as time available.
2021-06-08 22:56:06 +02:00
Bartosz Taudul
b68c23fc64
Update x86 CPU models list.
2021-06-04 18:59:41 +02:00
Bartosz Taudul
4316d48bea
Add a note about CPUID list.
2021-06-04 18:48:01 +02:00
Bartosz Taudul
7c378cd0a9
Add Rocket Lake uarch data.
2021-06-04 18:40:37 +02:00
Bartosz Taudul
cc831e8192
Description is not supposed to be formatted.
2021-06-04 15:29:08 +02:00
Bartosz Taudul
0b05587b05
Don't need to format const string.
2021-06-04 15:27:23 +02:00
Bartosz Taudul
cb849ee14c
Capitalize Tracy name.
2021-06-04 15:17:20 +02:00
Bartosz Taudul
3c076ddb6f
Opening unsupported trace gives option to download update.
2021-06-04 15:17:20 +02:00
Bartosz Taudul
39cf98f98c
Move OpenWebpage() to a separate source file.
2021-06-04 15:17:14 +02:00
Bartosz Taudul
86510c48e0
Use proper type.
2021-06-04 15:16:44 +02:00
Bartosz Taudul
3c31fb56a8
Allow range-limiting hardware samples.
2021-06-04 13:58:00 +02:00
Bartosz Taudul
a1acea0c50
Support hw sample times on server.
2021-06-04 13:38:45 +02:00
Bartosz Taudul
b7c5939bb8
Merge remote-tracking branch 'origin/master' into hw
2021-06-02 01:12:28 +02:00
Bartosz Taudul
94ec6a0d9d
Move TracyYield.hpp to common.
2021-05-31 02:19:35 +02:00
Bartosz Taudul
f8ccd8c40d
Move TracyStackFrames to common.
2021-05-23 23:51:56 +02:00
Bartosz Taudul
a6011cd1ad
Ignore intrinsic wrappers in callstack frames.
...
With gcc/clang the wrapper functions for intrinsics are annoyingly inserted at
top level of stack traces, making it hard to see the call site. Filter out all
known instrinsic headers.
2021-05-23 23:22:45 +02:00
Bartosz Taudul
c13611cf0c
Make unreliable hw stats darker.
2021-05-23 21:32:48 +02:00
Bartosz Taudul
19c41b94c0
Add glow to hotness indicators on lines.
2021-05-23 13:52:38 +02:00
Bartosz Taudul
a6f85bd061
Color hardware samples stats.
2021-05-23 13:13:38 +02:00
Bartosz Taudul
48ab346835
Add goodness color table accessor.
2021-05-23 12:49:40 +02:00
Bartosz Taudul
1b589855e8
Adjust hotness color scaling.
2021-05-23 12:29:48 +02:00
Bartosz Taudul
815cf7d00a
Display hardware counter statistics in asm line columns.
2021-05-23 02:39:31 +02:00
Bartosz Taudul
77c33327f4
Merge remote-tracking branch 'origin/master' into hw
2021-05-23 01:01:21 +02:00
Bartosz Taudul
5f7225ce32
Merge pull request #224 from keur/external_trace_use_file_and_line
...
Use file:line when comparing traces
2021-05-22 12:36:05 +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
306055ebfa
Cosmetics.
2021-05-22 00:46:11 +02:00
Kevin Kuehler
5ab84d0c3f
Use file:line when comparing traces
...
When comparing traces, where multiple classes share the same zone
names, the behavior prior to this patch was to auto-select the first
matching zone name in the other trace. Instead, find the most correct
zone by using filename and line number.
2021-05-21 15:25:26 -07:00
Bartosz Taudul
ea5a9ee83b
Merge remote-tracking branch 'origin/master' into hw
2021-05-20 20:56:16 +02:00
Bartosz Taudul
87cff004a4
Show hw samples tooltip when there are no samples.
2021-05-20 20:10:27 +02:00
Bartosz Taudul
3ba82ba4d6
Separate IPC, cache and branch data in tooltip.
2021-05-20 19:56:23 +02:00
Bartosz Taudul
c6f071a66a
Save and load hardware sample data.
2021-05-20 19:37:51 +02:00
xavier
28e5aae17e
build with gcc 11
2021-05-20 17:30:54 +02:00
Bartosz Taudul
df50eb890f
Fix printing percentage.
2021-05-20 02:53:49 +02:00
Bartosz Taudul
5a7e9cdbdd
0% miss rates are fine too.
2021-05-20 02:31:00 +02:00
Bartosz Taudul
9b4716c49e
Display cache and branch miss rates.
2021-05-20 02:26:02 +02:00
Bartosz Taudul
227a8d1aee
Process additional hardware sample data.
2021-05-20 02:19:11 +02:00
Bartosz Taudul
24b5e16718
Display hw sampling stats in tooltip.
2021-05-20 01:37:59 +02:00
Bartosz Taudul
3a0e12043d
Differentiate hw samples from code addresses.
2021-05-19 23:29:27 +02:00
Bartosz Taudul
28cc72a69c
Display hardware samples count.
2021-05-19 23:05:58 +02:00
Bartosz Taudul
3228e20c2e
Add hardware samples accessors.
2021-05-19 23:05:50 +02:00
Bartosz Taudul
373a2b66c6
Collect hardware sample data.
2021-05-19 23:05:33 +02:00
Bartosz Taudul
64ed3d057d
Add no-op dispatch of HW samples.
2021-05-19 21:09:55 +02:00
Bartosz Taudul
efc1777051
Implement range limit for child samples.
2021-05-19 20:26:50 +02:00
Bartosz Taudul
5ec1313af1
Drop legacy code for reading long unsupported traces.
2021-05-18 02:24:56 +02:00
Giulio Eulisse
aace8ac317
Update TracyView.cpp
2021-05-17 12:09:14 +02:00
Giulio Eulisse
2cdc3abba2
Update TracyImGui.hpp
2021-05-17 12:07:35 +02:00
Giulio Eulisse
4ab706d538
Update TracyMouse.cpp
2021-05-17 12:07:06 +02:00
Giulio Eulisse
bcb250aaab
Update TracySourceView.cpp
2021-05-17 12:06:37 +02:00
Giulio Eulisse
63e2c16e74
Do not use relative include path for ImGUI.h
...
#pragma once gets confused by `../../imgui/imgui.h` and `imgui.h` on macOS with XCode 12.5.
2021-05-17 12:05:14 +02:00
Bartosz Taudul
8219a0e4ca
Fix shift.
2021-05-15 18:39:01 +02:00
Bartosz Taudul
c91c7a7fd5
Use zstd dict for packing/unpacking frame images.
...
This only affects run-time memory usage and needs an offline calculation of
the dictionary. Results vary depending on similarity of image blocks.
agora 34.96 MB -> 28.21 MB
agora2 40.75 MB -> 34.14 MB
android-vk 36.21 MB -> 18.44 MB
astar3 44.72 MB -> 43.38 MB
clipper1 134.36 MB -> 52.16 MB
fi 50.82 MB -> 40.79 MB
fi-big 537.74 MB -> 469.54 MB
test 23.26 MB -> 1.87 MB
2021-05-15 18:06:44 +02:00
Bartosz Taudul
d555256546
Don't use separate texture compression context.
...
Previously it was needed, as saving could be made at the same time the UI was
active. Currently saving blocks UI access to data structures, as it possibly
may need to sort unsorted vectors.
2021-05-15 18:04:14 +02:00
Bartosz Taudul
925a23a053
Add texture packer with zstd dict support.
2021-05-15 18:04:14 +02:00
Bartosz Taudul
a53f5702b1
Calculate frame images dictionary.
2021-05-15 18:03:50 +02:00
Bartosz Taudul
56958a018c
Only show dict building checkbox if there are frame images.
2021-05-15 15:52:54 +02: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
ab830962c8
Fix notifications disappearing after a long UI lock.
2021-05-15 14:21:45 +02:00
Bartosz Taudul
7f1f929662
Decode PID and TID when generating imported thread names.
2021-05-15 13:08:51 +02:00
Bartosz Taudul
8ea02a4794
Cosmetics.
2021-05-15 13:03:42 +02:00
Bartosz Taudul
4f76fb2cda
Store location in SourceLocation during chrome import.
2021-05-11 01:37:59 +02:00
Bartosz Taudul
db734e3e0a
Parse custom location tags.
2021-05-11 01:37:59 +02:00
Bartosz Taudul
8d21202aaa
Remove floating point computation within hot loops.
2021-05-02 16:36:35 +02:00
Bartosz Taudul
7708184f73
Merge pull request #204 from nosferalatu/Direct3D11
...
Direct3D11
2021-05-02 02:46:24 +02:00
Bartosz Taudul
ab627f9da2
Build zig-zag path in a preallocated buffer.
2021-05-02 02:40:36 +02:00
David Farrell
dcf33b51cf
Updated comment to say that both OpenGL _and_ Direct3D11
...
don't need per-zone thread id.
2021-05-01 16:31:06 -07:00
David Farrell
e9fd767884
Added missing comma in GpuContextNames
2021-05-01 15:03:02 -07:00
Rahul Gupta
a950e444b5
Updated as suggested by wolf in the PR
2021-05-01 14:55:45 -07:00
Bartosz Taudul
4a8bfb4fac
Add ctrl/shift modifiers to mouse wheel zoom speed.
2021-05-01 18:20:19 +02:00
Bartosz Taudul
0e6a25fdd8
Directly compare time, with data piggybacked in low bits.
2021-05-01 15:04:56 +02:00
Bartosz Taudul
a688d24665
Replace two memory reads with just one.
2021-05-01 14:32:02 +02:00
Bartosz Taudul
088dd06197
Use DrawLine() in TracyView.cpp.
2021-05-01 13:59:43 +02:00
Bartosz Taudul
837272afba
Properly align context switch darken boxes.
2021-05-01 13:39:19 +02:00
Bartosz Taudul
a1aefe33a0
Use DrawLine() in TracySourceView.cpp.
2021-05-01 12:55:56 +02:00
Bartosz Taudul
c27c81db4c
Use DrawLine() in DrawCpuData().
2021-05-01 02:59:43 +02:00
Bartosz Taudul
fe22d5a6f6
Add fast line drawing function.
...
This skips unnecessary construction of ImVec2 vector.
Note: unlike AddLine(), this function doesn't add 0.5 to x and y coordinates.
The user is expected to do it on his own, which if done in just one place will
be performance beneficial.
2021-05-01 02:57:35 +02:00
Bartosz Taudul
b9ce9540be
Remove namespace indent in TracyImGui.hpp.
2021-05-01 02:26:46 +02:00
Bartosz Taudul
57d87af8a2
Add tooltips for register read/write markers.
2021-05-01 00:22:11 +02:00
Bartosz Taudul
de5f258b03
Display complementary assembly address tooltips.
2021-04-29 20:33:10 +02:00
Bartosz Taudul
854439cdb1
Display jump target in asm instruction tooltip.
2021-04-29 20:27:32 +02:00
Bartosz Taudul
ac9b97319a
Extract jump name retrieval.
2021-04-29 20:08:18 +02:00
Bartosz Taudul
7cfaaf6310
Exactly known latency shouldn't vary.
2021-04-29 18:24:37 +02:00
David Farrell
be963f184c
Change ev.ptr nullptr early-out to happen only when there is not a previous allocation for address 0. Custom memory pools (like custom allocators for Vulkan memory pools) can allocate at address 0, so the previous code would cause the Tracy server to alloc(0), free(0) (but early out), then on the next alloc(0) it would have a MemAllocTwiceFailure (because it skipped the free).
2021-04-21 11:53:55 -07:00
Bartosz Taudul
0bbda5ea11
Pressing Z will temporarily switch child calls.
2021-04-20 18:19:00 +02:00
Bartosz Taudul
e189f596ac
Add no-statistics guards.
2021-04-18 22:59:10 +02:00
Bartosz Taudul
d234f4dbe4
Generate child sample data during capture.
2021-04-18 22:44:37 +02:00
Bartosz Taudul
fb872fa088
Add child samples to source view percentages.
2021-04-18 22:23:55 +02:00
Bartosz Taudul
cba72859e9
No parents if only child samples.
2021-04-18 22:00:49 +02:00
Bartosz Taudul
141a4bc0fe
Fix scroll bar display of child-only samples.
2021-04-18 22:00:49 +02:00
Bartosz Taudul
c7da9b1092
Fix rendering of lines with no local samples.
2021-04-18 22:00:49 +02:00
Bartosz Taudul
66ef71cf7b
Gather child IP stats for addresses without samples.
2021-04-18 22:00:49 +02:00
Bartosz Taudul
ef93c69ee9
Make child calls more discoverable.
2021-04-18 22:00:48 +02:00
Bartosz Taudul
2009f63e32
Group time/samples data by local and child.
2021-04-18 20:43:23 +02:00
Bartosz Taudul
a5afa2cb4e
Use correct address for child sample information.
2021-04-18 20:43:23 +02:00
Bartosz Taudul
4970c48c51
Don't shadow variables.
2021-04-18 20:43:23 +02:00
Bartosz Taudul
c859d655ad
Include child calls in asm view percentages.
2021-04-18 20:43:22 +02:00
Bartosz Taudul
50a1faa880
Don't print zero sample counts in tooltips.
2021-04-18 20:16:05 +02:00
Bartosz Taudul
5f97c484f1
Include child samples in symbol view file list.
2021-04-18 19:42:24 +02:00
Bartosz Taudul
046881e32f
Add AddrStat::operator+=( AddrStat ).
2021-04-18 19:40:43 +02:00
Bartosz Taudul
22a8c53e8b
Account for case with no local samples (external only).
2021-04-18 19:21:53 +02:00
Bartosz Taudul
b217e00dd9
Hackfix support for UTF-8 in source files.
2021-04-18 19:14:12 +02:00
Bartosz Taudul
526d0cd22a
Display child time and samples in symbol stats.
2021-04-18 19:10:39 +02:00
Bartosz Taudul
c5eb398319
Gather external IP stats (no range limit case).
2021-04-18 19:04:29 +02:00
Bartosz Taudul
8db9bcf7f8
Disable child calls checkbox while processing data.
2021-04-18 18:27:39 +02:00
Bartosz Taudul
0d8ee47231
Store instruction pointer stats as AddrStat.
2021-04-18 16:16:47 +02:00
Bartosz Taudul
3845c392fa
Cosmetics.
2021-04-18 15:52:42 +02:00
Bartosz Taudul
55efa64b3f
Do not copy instruction pointer maps.
2021-04-18 15:51:50 +02:00
Bartosz Taudul
32e3c0ebb1
Display child sample counts in info window.
2021-04-18 15:06:54 +02:00
Bartosz Taudul
34b80ac52f
Add child samples count getters.
2021-04-18 15:03:42 +02:00
Bartosz Taudul
2f6adf3641
Add child calls UI.
2021-04-18 15:00:19 +02:00
Bartosz Taudul
ffe8aebfbd
Extend address stats to include child samples.
2021-04-18 15:00:19 +02:00
Bartosz Taudul
df462f109d
Reconstruct child sample data.
2021-04-18 15:00:19 +02:00
Bartosz Taudul
4dc6222ba1
Add child samples data structure.
2021-04-18 14:42:35 +02:00
Bartosz Taudul
fa8c99fd74
Fix missing limit range checkbox in source view.
...
This could happen if range was limited in such a way, that no sample was
within the region.
2021-04-18 14:42:35 +02:00
Bartosz Taudul
aee39d3fcd
Disable collapsing of connection window.
2021-04-18 14:42:31 +02:00
Bartosz Taudul
d71d76414b
Allow setting NO_PARALLEL_SORT externally.
2021-04-15 19:55:50 +02:00
Bartosz Taudul
07996c16cf
Fix gcc 8.3 with LTO.
...
In member function ‘UpdateSampleStatisticsImpl’:
warning: argument 1 value ‘18446744073709551598’ exceeds maximum object size 9223372036854775807 [-Walloc-size-larger-than=]
auto cfdata = (CallstackFrame*)alloca( ( fxsz-1 ) * sizeof( CallstackFrame ) );
^
2021-04-09 01:15:18 +02:00
Bartosz Taudul
2477f33a6d
Update robin-hood-hashing to 3.11.1.
2021-04-08 01:07:56 +02:00
Bartosz Taudul
592644ae43
Don't issue warning if only disconnect is in send queue.
2021-04-01 20:16:47 +02:00
Bartosz Taudul
9b7f759347
Allow checking if disconnect was requested.
2021-04-01 20:16:29 +02:00
Bartosz Taudul
450013bc27
Update to current uops.info xml file.
...
This updates ZEN3 and adds Tiger Lake.
2021-04-01 18:46:00 +02:00
Bartosz Taudul
da29ec975b
Release 0.7.7.
2021-04-01 18:15:07 +02:00
Bartosz Taudul
8ddf26fff2
Simplify code.
2021-03-27 15:24:42 +01:00
Bartosz Taudul
4c4fc7197c
Add source preview to entry call stacks window.
2021-03-27 14:15:18 +01:00
Bartosz Taudul
9bbffcb67f
Add source tooltip in memory frame trees.
2021-03-27 14:09:40 +01:00
Bartosz Taudul
5ebffe388a
Check for file name pointer validity.
2021-03-27 14:09:35 +01:00
Bartosz Taudul
ff6ecef5f3
Add source preview to statistics window.
2021-03-27 14:02:52 +01:00
Bartosz Taudul
62ac5544b6
Trim empty lines at top and bottom of source preview.
2021-03-27 13:55:22 +01:00
Bartosz Taudul
a15ba0c7fb
Show source preview tooltip in find zones.
2021-03-27 13:47:20 +01:00
Bartosz Taudul
895a63b41a
Add source preview to call stack window.
2021-03-27 13:43:12 +01:00
Bartosz Taudul
e2be45c0ba
Show preview of lock source locations in options window.
2021-03-27 13:43:12 +01: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
1cb6c17991
Move syntax color tables to a common header.
2021-03-27 13:03:19 +01:00
Bartosz Taudul
ff5435ff67
Cosmetics.
2021-03-27 13:03:19 +01:00
Bartosz Taudul
0b5a923e91
Display preview of source code for assembly instructions.
2021-03-26 02:42:15 +01:00
Bartosz Taudul
bd4335bace
Move source file parsing logic to a separate file.
2021-03-26 02:42:14 +01:00
Bartosz Taudul
174bb4d2f1
Extract source code tokenizer to a separate file.
2021-03-26 01:53:49 +01:00
Bartosz Taudul
b80899863b
Consistently use "entry call stacks".
2021-03-26 00:40:54 +01:00
Bartosz Taudul
2fe1fb974a
Display number of entry call stacks in a tooltip.
2021-03-26 00:27:23 +01:00
Bartosz Taudul
514acf1bac
Don't copy stats.
2021-03-26 00:21:19 +01:00
Bartosz Taudul
29133431bc
Calculate symbol address for parents earlier.
...
While currently this makes no sense, it will be also used in common code
path.
2021-03-26 00:17:46 +01:00
Bartosz Taudul
ec16182887
Only pack pointer if needed.
2021-03-26 00:14:12 +01:00
Stone Tickle
1918c0ffe6
fix TRACY_NO_FILESELECTOR macro
2021-03-17 08:51:24 +09:00
Bartosz Taudul
8dd92f32af
Handle memory double allocation failure.
2021-03-09 22:19:42 +01:00
Bartosz Taudul
6d5710901c
Fix ZoneColor channel order.
2021-03-09 02:14:57 +01:00
Bartosz Taudul
b51e3fbbc8
Remove unneeded variable.
2021-02-07 21:08:52 +01:00
Bartosz Taudul
9b5cc3352a
Fast search for zone tid in GetZoneThreadData().
2021-02-07 20:27:33 +01:00
Bartosz Taudul
c6c9fec383
Faster search for tid of zone in GetZoneParent().
2021-02-07 20:27:33 +01:00
Bartosz Taudul
35267abc8e
Remove obsolete GetZoneDepth() method.
2021-02-07 19:58:23 +01:00
Bartosz Taudul
02451fecd7
Remove not needed methods from SortedVector.
2021-02-07 19:36:45 +01:00
Bartosz Taudul
18e893752b
Use SortedVector for source location zones.
2021-02-07 19:35:53 +01:00
Bartosz Taudul
0100d0beb4
SortedVector has to provide reserve().
2021-02-07 19:35:23 +01:00
Bartosz Taudul
c220177828
Do postponed work only when needed.
2021-02-07 18:29:29 +01:00
Bartosz Taudul
9bb1d13afa
Revert to non-shared mutex for data lock.
...
The main change here is that the UI will be unresponsive when a trace is being
saved when there's no capture being performed. Note that the UI was always
frozen during saving if the capture was live, due to how starvation is
prevented by the locks.
2021-02-07 18:11:36 +01:00
Bartosz Taudul
417d526581
Use SortedVector for plot data.
2021-02-07 15:52:08 +01:00
Bartosz Taudul
90c873421c
Implement main sorting functionality in SortedVector.
2021-02-07 15:50:27 +01:00
Bartosz Taudul
e2db68e5f0
Comment out unneeded (for now) methods in SortedVector.
2021-02-07 15:49:16 +01:00
Bartosz Taudul
dcd76fc369
Add pass-through sorted vector wrapper.
2021-02-07 14:43:05 +01:00
Bartosz Taudul
3400331de1
Check source file validity against executable time.
2021-02-06 22:59:07 +01:00
Bartosz Taudul
ad2062fb40
Last-resort source code transfer from client to server.
2021-02-04 00:45:00 +01:00
Bartosz Taudul
f97223e394
Rename ParamPingback to more generic AckServerQueryNoop.
2021-02-04 00:03:58 +01:00
Bartosz Taudul
53505373c7
Always show full symbol name in ghost zone popups.
2021-01-31 20:49:49 +01:00
Bartosz Taudul
ab4d7259ea
Display GPU context name in options menu.
2021-01-31 19:15:23 +01:00
Bartosz Taudul
f068a1d31f
Display GPU context name in thread track labels.
2021-01-31 19:15:23 +01:00
Bartosz Taudul
c4a6f3f980
Save/load GPU context names.
2021-01-31 19:15:23 +01:00
Bartosz Taudul
7bb6114270
Process GPU context name messages.
2021-01-31 19:15:23 +01:00
Bartosz Taudul
82a9c3b2c8
Display program build time.
2021-01-31 17:58:33 +01:00
Bartosz Taudul
3ff1692918
Add executable time accessor.
2021-01-31 17:51:55 +01:00
Bartosz Taudul
8d39f91c6e
Save/load executable image mtime.
2021-01-31 17:51:16 +01:00
Bartosz Taudul
6c728f6d23
Cosmetics.
2021-01-31 17:24:41 +01:00
Bartosz Taudul
c08d591bf3
Use proper capstone include path.
2021-01-26 20:35:57 +01:00
Bartosz Taudul
2b3405b9c7
Fix usage of deprecated stat64 on apple.
2021-01-26 20:09:34 +01:00
Bartosz Taudul
81c91a87fc
Search in cache before issuing syscall.
2021-01-26 01:47:00 +01:00
Bartosz Taudul
ccf441176b
Merge pull request #168 from jkriegshauser/improve-import
...
Improve chrome import
2021-01-22 14:57:52 +01:00
joshuakr
c96f01956d
PR feedback: write the name into the tracy file
2021-01-21 18:33:59 -08:00
joshuakr
c5261e42ba
Fix for macOS build
2021-01-21 17:41:55 -08:00
Bartosz Taudul
efc856f842
Fix vertical padding of items in CPU data table.
2021-01-22 02:34:01 +01:00
joshuakr
2920f97911
Imported Chrome traces bring over thread names
2021-01-21 17:26:00 -08:00
joshuakr
25a95d99c0
Imported chrome traces show the file name in the title bar
2021-01-21 17:25:53 -08:00
Bartosz Taudul
239a17deb9
Fix typo.
2021-01-22 02:17:12 +01:00
Bartosz Taudul
e33f8e66d5
Set appropriate flags for CPU data table columns.
2021-01-21 23:26:32 +01:00
Bartosz Taudul
dee6395acf
Update pdqsort.
...
978bc36a9b
2021-01-21 23:26:32 +01:00
Bartosz Taudul
0fc6ebc67d
Another ImGuiTableColumnFlags_WidthAuto fix.
2021-01-21 23:26:32 +01:00
Bartosz Taudul
a4764141c6
Support serial callstacks when processing GPU zones.
2021-01-15 22:11:34 +01:00
Bartosz Taudul
d4c0d4fbb7
Rename CallstackMemory to CallstackSerial.
2021-01-15 20:49:39 +01:00
Bartosz Taudul
c66b2cb536
Process allocated source location GPU zones.
2021-01-15 20:33:45 +01:00
Bartosz Taudul
d827832d4d
Don't operate on short_ptr.
2021-01-15 20:25:07 +01:00
Bartosz Taudul
44020487d2
Keep zone begin implementations together.
2021-01-15 20:20:34 +01:00
Bartosz Taudul
cc5c20db46
Bump ImGui.
2021-01-08 19:33:04 +01:00
Bartosz Taudul
6e715cf346
Use tables for callstack sample parents.
2020-12-16 15:05:35 +01:00
Bartosz Taudul
f1d48b1298
Use tables for call stack view.
2020-12-16 15:01:07 +01:00
Bartosz Taudul
325bcc035a
Use tables to list memory entries.
2020-12-15 15:43:55 +01:00
Bartosz Taudul
6bb77d55a1
Use tables in CPU data view.
2020-12-09 21:53:36 +01:00
Bartosz Taudul
dc6893f419
Use tables for sampled statistics menu.
2020-12-09 21:36:53 +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
a0bae4aa00
Allow hiding columns in some tables.
2020-12-08 19:55:20 +01:00
Bartosz Taudul
b4860bbe4d
Use tables in messages list.
2020-12-08 19:55:20 +01:00
Bartosz Taudul
45078cd99d
Remove table row backgrounds.
2020-12-08 19:55:20 +01:00
Bartosz Taudul
18ac6ee548
Use tables for time distribution.
2020-12-08 19:55:19 +01:00
Bartosz Taudul
34683ceb4d
Use tables in the failure callstack view.
2020-12-08 19:55:19 +01:00
Bartosz Taudul
a0bf2f5605
ImGui::BeginTable() is conditional.
2020-12-08 19:55:19 +01:00
Bartosz Taudul
9a0e7abefa
Use proper identifier.
2020-12-08 19:55:19 +01:00
Bartosz Taudul
c23eb2f7fb
Limit table size to 14 elements.
2020-12-08 19:55:19 +01:00
Bartosz Taudul
d962301124
Use tables for message list in zone info window.
2020-12-08 19:55:19 +01:00
Bartosz Taudul
99c4b9ef5f
Use tables for wait regions.
2020-12-08 19:55:19 +01:00
Bartosz Taudul
a7cdffa736
Use tables for trace parameters.
2020-12-08 19:55:19 +01:00
Bartosz Taudul
3495a5a678
Print Arm machine code as a 4-byte number would be printed.
2020-11-28 13:24:56 +01:00
Ben Vanik
7dfdad2e02
Adding ZoneColor to set a dynamic color override to an existing zone.
2020-11-27 20:12:24 +01:00
Bartosz Taudul
d0acee2a9a
Add missing default no-op to switch.
2020-11-23 22:58:40 +01:00
Bartosz Taudul
34e208368d
Add missing include.
2020-11-23 22:58:12 +01:00
Bartosz Taudul
de69fc9850
Check if plot data values are finite numbers.
2020-11-23 22:48:55 +01:00
Bartosz Taudul
37c9a5807f
Fix statistics image name filter clear button.
2020-11-18 01:30:28 +01:00
Bartosz Taudul
53eacd3dc2
Add lost connection popup.
2020-11-18 01:24:22 +01:00
Bartosz Taudul
78fd523a4b
Don't print "connected to" after disconnection.
2020-11-18 01:24:22 +01:00
Bartosz Taudul
e580dfeed3
Release 0.7.4.
2020-11-15 21:51:34 +01:00
Bartosz Taudul
63e3c236f4
Add Zen 3 to list of uarchs.
2020-11-15 21:29:59 +01:00
Bartosz Taudul
31e20cba68
Add Zen 3 uarch measurements.
2020-11-15 21:23:15 +01:00
Bartosz Taudul
af4c9b7cdc
Draw frame targets.
2020-11-15 16:16:36 +01:00
Bartosz Taudul
8a1d8e4bac
Add frame target UI.
2020-11-15 15:46:23 +01:00
Bartosz Taudul
81dcd2c767
Optional namespace shortening for ghost zones.
2020-11-14 16:23:35 +01:00
Bartosz Taudul
2ac7048248
Support source location dynamic colors for ghost zones.
2020-11-14 16:18:27 +01:00
Bartosz Taudul
2f77885fd9
Show if an matching microarchitecture is selected.
2020-11-13 17:37:53 +01:00
Bartosz Taudul
dcddf8898b
Display memory usage also as a percentage.
2020-11-13 17:22:10 +01:00
Bartosz Taudul
2bf00b5eab
Get available physical memory size in viewer.
2020-11-13 17:09:57 +01:00
Bartosz Taudul
d7059eca63
Prepare for Zen 3.
...
0xA20F10 is Vermeer.
2020-11-07 00:26:45 +01:00
Bartosz Taudul
30b4eafa22
Add Zen 2 CPU ids.
...
0x860F81 is Lucienne.
0x890F00 is VanGogh.
2020-11-07 00:26:00 +01:00
Bartosz Taudul
b36e821cc7
Add cascade lake CPU ids.
2020-11-07 00:20:55 +01:00
Bartosz Taudul
02c90db2e4
Display op description, if available.
2020-11-07 00:16:10 +01:00
Bartosz Taudul
322cc3bf12
Add missing op description list definition.
2020-11-07 00:15:58 +01:00
Bartosz Taudul
a5fd6662be
Add CLX to list of uarchs.
2020-11-07 00:07:20 +01:00
Bartosz Taudul
c08d081f9a
Update uops.info data to 05.11.2020.
2020-11-06 23:59:57 +01:00
Bartosz Taudul
e5967bdc52
Fix context switch + samples offset logic.
2020-11-06 00:20:26 +01:00
Bartosz Taudul
a48d540854
Cache statistics range-limited data.
2020-11-01 16:24:08 +01:00
Bartosz Taudul
87c3796e84
Fix division by zero if no sampling data is present.
2020-11-01 14:45:26 +01:00
Bartosz Taudul
7791654896
Allow copying callstack to clipboard.
2020-10-30 18:27:52 +01:00
Bartosz Taudul
0c48956410
Fix parsing of source files that do not end in newline.
2020-10-28 21:43:03 +01:00
Bartosz Taudul
651cfd5c21
Now apple has to be stupid.
...
Remove this when they get their shit together with parallel execution.
2020-10-28 21:16:26 +01:00
Bartosz Taudul
3976408550
Adapt to non-obsolete ImGuiListClipper interface.
2020-10-18 22:51:59 +02: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
98e3822c88
C arrays are so much fun!
2020-10-06 14:58:42 +02:00
Bartosz Taudul
c9b64ef5c5
Move list of Tracy stack frames to a separate file.
2020-10-06 14:37:39 +02:00
Bartosz Taudul
e613c458dd
Fix vertical alignment.
2020-10-06 01:38:40 +02:00
Bartosz Taudul
5af7f6ea0b
Add memory pool selector to zone info window.
2020-10-06 01:32:03 +02:00
Bartosz Taudul
07fe1266b0
Fix string iteration condition.
2020-10-02 19:31:42 +02:00
Bartosz Taudul
a2f0f7754d
Fix integer types.
2020-10-02 19:30:01 +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
8aae9a1477
Shut the compiler up about unused helper functions.
2020-10-02 18:33:13 +02:00
Bartosz Taudul
a5e0336936
Add missing server query space updates to failure handling.
2020-09-30 16:48:59 +02:00
Bartosz Taudul
0d209b80f4
Show call stack in failure dialog.
2020-09-30 16:32:34 +02:00
Bartosz Taudul
9d392d2c90
Process call stack frames during failure dispatch.
2020-09-30 15:57:14 +02:00
Bartosz Taudul
641649143c
Make symbol queries optional.
2020-09-30 15:49:29 +02:00
Bartosz Taudul
cecc3783a8
Handle single and second string data in failure dispatch.
2020-09-30 15:46:00 +02:00
Bartosz Taudul
3135191e90
Wait for failure callstack to be received.
2020-09-29 18:40:04 +02:00
Bartosz Taudul
d8e653ecb4
Set memory failure callstack.
2020-09-29 18:40:04 +02:00
Bartosz Taudul
98aaca9597
Default-initialize failure data struct.
2020-09-29 18:40:04 +02:00
Bartosz Taudul
44aef7660d
Don't keep two variables to track one thing.
2020-09-29 17:04:41 +02:00
Bartosz Taudul
d5b6befda2
Handle new callstack ordering on server.
2020-09-29 16:59:28 +02:00
Bartosz Taudul
e3d690df63
Cosmetics.
2020-09-25 18:10:22 +02:00
Bartosz Taudul
4c3dce6712
Preserve separate memory tree state for each pool.
2020-09-25 17:55:43 +02:00
Bartosz Taudul
ae14e7a879
Expose custom memory pools in the UI.
2020-09-25 17:51:05 +02:00
Bartosz Taudul
d238c97452
Save/load custom memory types.
2020-09-25 16:39:00 +02:00
Bartosz Taudul
ba4315c286
Store memory name in MemData struct.
2020-09-25 16:36:03 +02:00
Bartosz Taudul
97e17a8d49
Support custom names for memory plots.
2020-09-24 01:31:24 +02:00
Bartosz Taudul
5a6c8b4696
Process named memory allocations.
2020-09-24 01:31:24 +02:00
Bartosz Taudul
751692eedd
Don't track latest trace events if there's no connection.
2020-09-24 01:31:24 +02:00
Bartosz Taudul
d1ea97b474
Prepare for handling multiple memory areas.
2020-09-24 01:31:23 +02:00
Bartosz Taudul
46f0853f1b
Process memory name payload transfer.
2020-09-24 01:31:23 +02:00
Bartosz Taudul
a9ce4f6454
Cosmetics.
2020-09-24 01:31:23 +02:00
Bartosz Taudul
a668b61320
Allow ignoring custom zone colors.
2020-09-21 02:04:13 +02:00
Bartosz Taudul
5490948567
Release 0.7.2.
2020-09-14 22:55:41 +02:00
Bartosz Taudul
05f0ffd0ed
Add "reconnect" button to connection failure dialogs.
2020-09-12 15:52:21 +02:00
Bartosz Taudul
812f869669
Decouple zoom level from tracking last events.
2020-09-12 15:49:41 +02:00
Bartosz Taudul
75ae14cd04
Use in-place merge to sort symbol data.
2020-09-07 01:47:11 +02:00
Bartosz Taudul
4b97528604
Streamline "waiting for connection" dialog.
2020-09-06 13:54:22 +02:00
Bartosz Taudul
4ac0e7d955
Allow filtering sampling results by image name.
2020-08-21 14:23:23 +02:00
Bartosz Taudul
0f13a02062
Properly terminate symbol inline location data.
...
Previously there was no end value on which iteration would stop in case of
the last-in-the-process-space symbol, which resulted in out-of-bounds read.
Workaround has been added for versions < 0.7.2, but no version bump has been
performed (still at 0.7.1). Having two terminator values at the end of the
list is harmless.
2020-08-20 18:50:20 +02:00
Bartosz Taudul
7cf3b0b004
Workaround issues with sample order.
2020-08-18 21:53:52 +02:00
Bartosz Taudul
5239b706c3
Allow disabling code transfer.
2020-08-16 01:31:54 +02:00
Bartosz Taudul
28af5230d3
Perform OpenGL texture cleanup only on main thread.
2020-08-15 15:02:36 +02:00
Bartosz Taudul
a3d8b5d225
Allow running specific tasks on main thread.
2020-08-15 14:59:16 +02:00
Bartosz Taudul
caa1b1a792
Fix initialization list order.
2020-08-15 02:26:35 +02:00
Bartosz Taudul
f828fed015
Remove unused variables.
2020-08-15 02:23:04 +02:00
Bartosz Taudul
be0e3b9cc4
Silence memcpy/memset warnings.
2020-08-15 02:14:29 +02:00
Bartosz Taudul
833653ce40
Display time stamp when hovering mouse over time scale.
2020-08-14 13:28:34 +02:00
Bartosz Taudul
5e559322a0
Properly check if symbol code is available.
2020-08-14 12:38:56 +02:00
Bartosz Taudul
16eef3f966
Clamp frame image textures to edge.
2020-08-13 18:16:10 +02:00
Bartosz Taudul
321c079205
Fix typo.
2020-08-13 16:56:56 +02:00
Bartosz Taudul
fa7d515165
Display base symbol address in symbol view window.
2020-08-13 16:36:13 +02:00
Bartosz Taudul
b6feb99e98
Show which symbols are available.
2020-08-13 16:24:09 +02:00
Bartosz Taudul
b6d54281a9
Ignore unknown source lines during ip stats gathering.
2020-08-13 00:34:55 +02:00
Bartosz Taudul
8e9a701277
Fix crash when trying to open unavailable source file.
2020-08-12 19:05:16 +02:00
Bartosz Taudul
8cfc614047
Include time range limits in symbol view functions list.
2020-08-11 21:07:23 +02:00
Bartosz Taudul
46163a1989
Implement asm ip stats counter.
2020-08-11 21:07:23 +02:00
Bartosz Taudul
7aa8e408df
Remove unused variable.
2020-08-11 16:02:07 +02:00
Bartosz Taudul
34fa99c7ee
Restrict sample statistics percentages to time range limit.
2020-08-11 15:50:54 +02:00
Bartosz Taudul
b9a810827d
Make instrumented statistics percentages relative to time range.
2020-08-11 15:38:55 +02:00
Bartosz Taudul
6feb017cbe
Also display statistics time range if symbol view is open.
2020-08-10 19:03:32 +02:00
Bartosz Taudul
b9b39f1957
Allow checking if source view is symbol view.
2020-08-10 19:03:23 +02:00
Bartosz Taudul
5dd7c7e402
Add time range limiting to symbol view.
2020-08-10 18:58:33 +02:00
Bartosz Taudul
7a4ecc5417
Store instruction pointers in per-symbol sample data.
2020-08-10 14:52:51 +02:00
Bartosz Taudul
85f54499fe
Add range limit UI to symbol view.
2020-08-10 12:11:07 +02:00
Bartosz Taudul
339ed7cc4d
Fix tooltip stroboscope.
2020-08-09 21:40:06 +02:00
Bartosz Taudul
06ac6f4f24
Build per-symbol samples list during live capture.
2020-08-09 21:04:03 +02:00
Bartosz Taudul
3be0a3f628
Vector is not empty here.
2020-08-09 20:46:44 +02:00
Bartosz Taudul
1650d371e6
Actually set self time option, if required.
2020-08-07 19:43:31 +02:00
Bartosz Taudul
d6aa814de5
Use time limited data for inline stats.
2020-08-07 19:42:18 +02:00
Bartosz Taudul
d151aff237
Allow time limiting sampled call stacks statistics.
2020-08-07 19:26:19 +02:00
Bartosz Taudul
b418c98e63
Add symbol samples accessor.
2020-08-07 19:14:21 +02:00
Bartosz Taudul
aa8b60a824
Calculate per-symbol sample time list.
...
This is for loaded traces. Real time capture will be implemented later.
2020-08-07 19:05:27 +02:00
Bartosz Taudul
87e7cba289
Disable samples limit range until background job is done.
2020-08-07 14:54:00 +02:00
Simon van Bernem
d06617b2a5
Fixed variable name
2020-08-07 10:55:00 +02:00
Simon van Bernem
4e1ed15237
More matching code-style
2020-08-07 10:45:52 +02:00
Simon van Bernem
ab85fba7e0
Matching the braketing style
2020-08-07 10:42:36 +02:00
Simon van Bernem
903b7badc0
next try
2020-08-07 10:39:22 +02:00
Simon van Bernem
e14bb56db1
matching spacing to remove change from original
2020-08-07 10:38:38 +02:00
Simon van Bernem
b826c14e4d
reverted an unnecessary change
2020-08-07 10:37:19 +02:00
Simon van Bernem
3dd80c5288
DrawStripedRect can now draw screen-space stripes
...
Added two parameters to DrawStripedRect: fix_stripes_in_screen_space aligns the stripes to screen space. This leads to the stripes of any stripe rect being drawn aligning. Also added inverted, which flips the empty and filled part of the striped rect. This is used to make statRange and findZone stripes interleave, when they overlap.
2020-08-07 10:24:13 +02:00
Bartosz Taudul
550e05d149
Fix time range limits created by reverse-mouse-drag.
2020-08-07 00:24:22 +02:00
Bartosz Taudul
983aba7a0b
Self time is forced for range limit in sampling stats.
2020-08-06 17:22:47 +02:00
Bartosz Taudul
0a0d04fff6
Add time range limits to instrumentation statistics.
2020-08-06 15:22:10 +02:00
Bartosz Taudul
b68423fc1a
Fix copy pasta.
2020-08-06 15:22:10 +02:00
Bartosz Taudul
71440cc6ee
Use custom data structure for temporary stats data.
2020-08-06 15:22:10 +02:00
Bartosz Taudul
251e8f1fe2
Fix vertical panning.
2020-08-05 17:20:19 +02:00
Bartosz Taudul
c4cf690e39
Display annotation extent on annotations list.
2020-08-04 17:31:33 +02:00
Bartosz Taudul
05c60259b6
Display exact time for annotation begin, end.
2020-08-04 17:26:00 +02:00
Bartosz Taudul
22e86af4ab
Remove redundant tooltip.
2020-08-04 17:24:59 +02:00
Bartosz Taudul
a5c16a39ba
Make annotations resizable.
2020-08-04 17:23:12 +02:00
Bartosz Taudul
f589fba274
Use Range for annotation extent.
2020-08-04 17:14:58 +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
85e8a6a81c
Add icons to range limits window entries.
2020-08-04 17:06:24 +02:00
Bartosz Taudul
67e86d2b27
Add context menus to ghost zones.
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
321fa06a3d
Merge adding annotations and setting range limits.
2020-08-04 16:40:35 +02:00
Bartosz Taudul
79fc917483
Hook-up statistics time range logic.
2020-08-04 14:31:53 +02:00
Bartosz Taudul
7fe1560ca5
Change find zone limit range color to green.
2020-08-04 14:23:37 +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
a23f58cc8f
Add spacing in find zone menu.
2020-08-04 14:13:12 +02:00
Bartosz Taudul
ed01a3e4e0
Extract common filtering UI logic.
2020-08-04 14:09:59 +02:00
Bartosz Taudul
21589a238b
Reduce size of statistics menu controls.
2020-08-04 14:06:32 +02:00
Bartosz Taudul
2f94b44a6c
Move filter UI to a separate line in statistics menu.
2020-08-03 17:08:47 +02:00
Bartosz Taudul
9b1573d803
Add limits button to find zone menu.
2020-08-03 16:07:38 +02:00
Bartosz Taudul
02aae23a98
Move limits button to tools submenu.
2020-08-03 16:07:28 +02:00
Bartosz Taudul
498781b5bf
Clear potential click after mouse button is released.
2020-08-01 13:01:04 +02:00
Bartosz Taudul
734b0c25d9
Fix typo.
2020-08-01 12:55:49 +02:00
Bartosz Taudul
7d34350bf3
Drag delta (accumulated) shouldn't be consumed.
2020-08-01 12:36:52 +02:00
Bartosz Taudul
b33445c073
Open context menus without ctrl key.
2020-08-01 12:35:30 +02:00
Bartosz Taudul
b4021d7d79
Add mouse click vs drag logic.
2020-08-01 12:35:15 +02:00
Bartosz Taudul
4da8385300
Range overlay resize has priority over other mouse interactions.
2020-08-01 12:11:06 +02:00
Bartosz Taudul
22651eccc5
Implement consumption of mouse events.
2020-08-01 12:10:59 +02:00
Bartosz Taudul
6d0d12ce78
Remove unneeded parameter.
2020-08-01 12:03:11 +02:00
Bartosz Taudul
6836014caa
Capture ImGui mouse state.
2020-08-01 12:02:11 +02:00
Bartosz Taudul
39197b9ff8
Use mouse wrappers.
2020-08-01 11:53:11 +02:00
Bartosz Taudul
733b9c4048
Add wrapper for ImGui mouse handling.
2020-08-01 11:49:43 +02:00
Bartosz Taudul
dbcc908dee
Fix initialization.
2020-07-31 18:10:03 +02:00
Bartosz Taudul
19246a027f
Allow limiting find zone time range to zone extent.
2020-07-31 18:01:07 +02:00
Bartosz Taudul
efc9c7c58f
Add color key for find zone time range.
2020-07-31 17:57:54 +02:00
Bartosz Taudul
65e00eb2d4
Show time limit overlay if range window is open.
2020-07-31 17:54:46 +02:00
Bartosz Taudul
2bce9319d0
Allow focusing to find zone time range.
2020-07-31 17:51:47 +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
7f90a0a84e
Proper test for hovering mouse over the timeline.
2020-07-29 19:03:54 +02:00
Bartosz Taudul
e406ce5aab
Fix typo.
2020-07-29 19:00:37 +02:00
Bartosz Taudul
5aff4b0f50
Set proper mouse cursor on range boundaries.
2020-07-29 18:54: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
f37a324a9e
Add annotation removal button hint.
2020-07-29 17:07:40 +02:00
Bartosz Taudul
29fe5f211f
Warn when range limiting is enabled.
2020-07-29 15:45:50 +02:00
Bartosz Taudul
3e3f8aaabf
Enable linear filtering for frame images.
2020-07-29 13:31:26 +02:00
Bartosz Taudul
25ee7f945b
Draw limit region with striped rect.
2020-07-29 13:26:47 +02:00
Bartosz Taudul
d8728be689
Striped rect drawing.
2020-07-29 13:18:23 +02:00
Bartosz Taudul
fd5ccc16d6
Extract find zone range data to a separate struct.
2020-07-28 15:12:45 +02:00
Bartosz Taudul
7e6a41e647
No need for lean alloc srcloc zone begin messages.
2020-07-26 14:35:04 +02:00
Bartosz Taudul
062bb3044f
No need for lean callstack sample message.
2020-07-26 14:28:13 +02:00
Bartosz Taudul
4252cac654
No need for lean callstack alloc message.
2020-07-26 14:25:32 +02:00
Bartosz Taudul
18713de70c
No need for lean frame image message.
2020-07-26 14:23:04 +02:00
Bartosz Taudul
b76726c597
No need for lean callstack, callstack memory messages.
2020-07-26 14:23:03 +02:00
Bartosz Taudul
14a15bf152
Order of lock events is now always well-defined.
2020-07-26 13:54:40 +02:00
Bartosz Taudul
03f46d7228
Custom string data is no longer needed.
2020-07-26 01:47:49 +02:00
Bartosz Taudul
c0b73c248f
Add second single string transfer.
2020-07-26 01:47:49 +02:00
Bartosz Taudul
a7d2ab4d4f
Send single string for lock name.
2020-07-26 01:47:49 +02:00
Bartosz Taudul
e91950f006
Send single string for messages.
2020-07-26 01:35:52 +02:00
Bartosz Taudul
5553761c02
Send single string for zone text and name.
2020-07-26 01:35:52 +02:00
Bartosz Taudul
309a151610
Symbol length no longer has to be packed.
2020-07-26 01:35:52 +02:00
Bartosz Taudul
88685440b6
Send single string for callstack frame.
2020-07-26 01:35:52 +02:00
Bartosz Taudul
61e3acde06
Send single string for callstack frame size.
2020-07-26 01:35:52 +02:00
Bartosz Taudul
e3dfa96055
Extract single string idx retrieval.
2020-07-26 01:35:52 +02:00
Bartosz Taudul
06ca4e2d16
Send single string for symbol information.
2020-07-26 01:35:52 +02:00
Bartosz Taudul
14b180cd16
Send single string for code information.
2020-07-26 01:35:51 +02:00
Bartosz Taudul
81d5a8db5e
Implement transport of single string data.
...
In most cases only one string is sent per message and no pointer
tracking is needed.
This is only plumbing work, no changes to messages have been made yet.
2020-07-26 01:35:51 +02:00
Bartosz Taudul
6fe3736a23
When selecting function in symbol view, go to function location.
2020-07-19 23:43:52 +02:00
Bartosz Taudul
0704ab8f79
Clear frame image back references when removing fi data.
2020-07-17 22:16:47 +02:00
Bartosz Taudul
d614dbeda3
Show image name next to symbol name.
2020-07-14 17:23:04 +02:00
Bartosz Taudul
1da51918b6
Append new messages to visible message list.
2020-07-13 02:03:00 +02:00
Bartosz Taudul
420bdd5854
Don't recalculate message list every frame.
2020-07-12 15:26:05 +02:00
Bartosz Taudul
29ac0169aa
Use clipper to display messages list.
2020-07-12 15:13:03 +02:00
Bartosz Taudul
333e10c724
Move message line drawing to a separate function.
2020-07-12 15:07:43 +02:00
Bartosz Taudul
f2d6c79742
Don't wrap messages.
2020-07-12 15:00:56 +02:00
Bartosz Taudul
953df69b77
Build a list of messages to display.
2020-07-12 14:54:22 +02:00
Bartosz Taudul
863f37e1bc
Remove dedicated "go to frame" button.
2020-07-12 00:18:44 +02:00
Bartosz Taudul
a7a36c08cb
Fix frame number formatting.
2020-07-12 00:04:05 +02:00
Bartosz Taudul
39debea990
Middle-click on time span sets the view range to entire capture.
2020-07-11 14:11:13 +02:00
Bartosz Taudul
0f9597aee8
Display frame number, if there's space for it.
2020-07-11 14:05:08 +02:00
Bartosz Taudul
e48b5611c5
Save GPU context calibration state.
2020-07-07 21:25:35 +02:00
Bartosz Taudul
a3c51f0e7e
Don't show drift adjustment for calibrated GPU contexts.
2020-07-07 21:25:35 +02:00
Bartosz Taudul
21f4981f38
Process GPU calibration on server.
2020-07-07 21:25:35 +02:00
Bartosz Taudul
1b6bc1b69a
Send Vulkan GPU calibration messages.
2020-07-07 21:25:35 +02:00
Bartosz Taudul
1013ec8db7
Drop accuracy bits from GPU context.
2020-07-07 01:21:36 +02:00
Bartosz Taudul
384e2e3fa1
Reduce memory requirements of allocated call stacks.
2020-07-05 17:33:29 +02:00
Bartosz Taudul
6fe90e136f
Bump xxh3 to fix AVX512 problems.
2020-07-05 11:29:06 +02:00
Bartosz Taudul
925bf7e638
Implement grouping zones by zone name.
2020-07-04 12:36:04 +02:00
Bartosz Taudul
435fb4bb4f
Add copy-to-clipboard buttons to zone info windows.
2020-07-04 11:59:25 +02:00
Bartosz Taudul
1bfd59c595
Add a wrapper function for drawing clipboard button.
2020-07-04 11:56:56 +02:00
Bartosz Taudul
763f5aafdd
Attach pending frame images only to the main frame set.
2020-06-30 00:53:26 +02:00
Bartosz Taudul
afbd6b8786
Fix frame histogram when changing frame set in trace info window.
2020-06-27 21:51:50 +02:00
Bartosz Taudul
c7d94a66b0
Bump xxh3 to 0.7.4.
2020-06-27 17:01:31 +02:00
Bartosz Taudul
e9788cc04c
Bump robin_hood to 3.7.0.
2020-06-26 00:51:03 +02:00
Dmitry Ivanov
9fa80c2cc8
Import chrome metrics
2020-06-21 13:45:41 +02:00
Bartosz Taudul
d1e17de7c2
Allow import of plots.
2020-06-20 15:30:06 +02:00
Bartosz Taudul
2b5e45cd9b
Fix edge case in directory structure creation.
2020-06-19 17:17:26 +02:00
Bartosz Taudul
11e1671048
Use proper string formatting.
2020-06-18 01:32:53 +02:00
Bartosz Taudul
b0d71b648f
Allow listing cached source files.
2020-06-17 18:26:23 +02:00
Bartosz Taudul
c507507233
Fix gcc/clang.
2020-06-16 20:14:59 +02:00
Bartosz Taudul
47dfddedfd
Use tzcnt instead of bsf.
2020-06-16 18:19:05 +02:00
Bartosz Taudul
7a6141389c
Replace floating point condition with a bool.
2020-06-16 01:46:26 +02:00
Bartosz Taudul
dd05c8f524
Fix fixup of ghost zones end times.
2020-06-15 17:41:00 +02:00
Bartosz Taudul
71359c46c1
Drop support for loading pre-0.6.0 traces.
2020-06-14 15:52:52 +02:00
Bartosz Taudul
21ddd0a820
Postpone initialization of hashmaps.
2020-06-12 11:26:44 +02:00
Bartosz Taudul
cbcf393332
Release 0.7.0.
2020-06-11 14:30:34 +02:00
Bartosz Taudul
3992eb0542
Move RDO threshold logic to tables.
2020-06-11 14:09:19 +02:00
Bartosz Taudul
2ab605d232
Use dedicated max-of-three-elements function.
2020-06-11 13:45:04 +02:00
Bartosz Taudul
2608ceca05
Improve memory access patterns in RDO compression.
2020-06-11 13:36:17 +02:00
Bartosz Taudul
2723144678
Don't create empty ghost children vectors.
2020-06-11 12:27:17 +02:00
Bartosz Taudul
99544f4655
Clamp previous ghost zones to current sample time.
2020-06-11 12:18:44 +02:00
Bartosz Taudul
191ff93822
Optimize DXT1 index order fixing.
2020-06-11 03:04:09 +02:00
Bartosz Taudul
d1ef8ea90b
Set owner of file dialogs on windows.
2020-06-10 01:52:17 +02:00
Bartosz Taudul
e932cbe162
Add missing OpenCL mentions.
2020-06-09 18:17:43 +02:00
Bartosz Taudul
8bbc40beb2
Bump version, protocol for D3D12.
2020-06-09 11:20:50 +02:00
Andrew Depke
39479b8d93
Merge branch 'master' into master
2020-06-08 23:50:20 -06:00
Bartosz Taudul
929d399995
Fix determination of line width.
2020-06-08 14:02:11 +02:00
Andrew Depke
3282a8d27c
Added server support for D3D12 contexts
2020-06-07 00:40:08 -06:00
Bartosz Taudul
c384ec132f
Fix position of source separator line.
2020-06-06 20:50:24 +02:00
Bartosz Taudul
9c49ee3dd3
Don't mark windows as write-modified when only reading data.
2020-06-06 20:46:46 +02:00
Bartosz Taudul
d35d9b60ff
Bump protocol and version for OpenCL support.
2020-06-06 14:57:48 +02:00
Bartosz Taudul
57f1ef05c7
Merge pull request #31 from mcleary/opencl-support
...
Add OpenCL trace support
2020-06-06 14:56:29 +02:00
Bartosz Taudul
ecfeb01aad
Set source view content width to max value, regardless of clipping.
2020-06-06 12:37:05 +02:00
Bartosz Taudul
a3a7183293
Disable inclusion of non-windows in ctrl-tab list.
2020-06-05 19:23:27 +02:00
Bartosz Taudul
16b116ee83
Enable horizontal scrollbar in source view.
2020-06-05 19:04:12 +02:00
Thales Sabino
a46f83364e
Add OpenCL trace support
...
- Adds the file TracyOpenCL.hpp which contains the API to annotate OpenCL applications
- It works in a similar fashion to the Vulkan annotations
- Adds an example OpenCL application in examples/OpenCLVectorAdd
- Adds "OpenCL Context" to the UI
- Manual entry for annotating OpenCL zones
2020-06-05 10:15:47 +01:00
Bartosz Taudul
71d789063e
Show only relevant options in asm view.
2020-06-04 19:59:13 +02:00
Bartosz Taudul
3fbc2c8036
Increase buffer size.
2020-06-04 19:54:11 +02:00
Bartosz Taudul
e19a981b8c
Fix display of unknown source locations in asm view.
2020-06-04 19:39:43 +02:00
Bartosz Taudul
ce2e01bcd7
Skip processing uarch data if AT&T mode is enabled.
2020-06-04 19:30:44 +02:00
Bartosz Taudul
adc2c12a67
Clear asm data when opening just source view.
2020-06-04 19:20:24 +02:00
Bartosz Taudul
c52936855e
Don't read beyond buffer end.
2020-06-04 02:46:46 +02:00
Bartosz Taudul
917da8cff3
Properly terminate combo table.
2020-06-04 02:41:45 +02:00
Bartosz Taudul
f227bb4d9c
Update instruction tables to "may 2020".
2020-06-03 21:17:52 +02:00
Bartosz Taudul
9e500bc897
Handle merging inlined ghost zones.
2020-05-31 21:47:52 +02:00
Bartosz Taudul
994b88f898
Ghost index is only available is statistics are enabled.
2020-05-31 15:24:11 +02:00
Bartosz Taudul
067189c355
Extract ghost zone adding to a separate function.
2020-05-31 14:51:33 +02:00
Bartosz Taudul
d9e97ce772
Add postponed ghost zones when frame data becomes available.
2020-05-31 14:31:39 +02:00
Bartosz Taudul
1154343a20
Don't add ghost zones if full callstack data isn't available.
2020-05-31 14:17:54 +02:00
Bartosz Taudul
de5f8df9d3
UpdateSampleStatistics() returns if all samples were processed.
...
This effectively is a check if all frames in a callstack are available.
2020-05-31 14:05:16 +02:00
Bartosz Taudul
7ce915c4f6
Allow display of symbol address in statistics view.
2020-05-30 15:39:34 +02:00
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
4f3934ae6a
Use correct symbol address.
2020-05-26 02:08:30 +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
7ceb4005cd
Don't use alloca in inlined functions inside a loop.
2020-05-24 16:17:54 +02:00
Bartosz Taudul
2b304581cf
Implement transfer of integral values for zones.
2020-05-24 16:13:09 +02:00
Bartosz Taudul
45a9878193
Don't depend on zero-termination of source code.
2020-05-23 17:07:23 +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
18b2e3e5be
Don't depend on View in Worker.
2020-05-23 15:53:58 +02:00
Bartosz Taudul
2f35c785ee
Save/load cached source files.
2020-05-23 15:44:19 +02:00
Bartosz Taudul
5b96809f6f
Add notification when source file is loaded from cache.
2020-05-23 15:44:19 +02:00
Bartosz Taudul
dc0f2db3f2
CheckString() doesn't check if string query is still pending.
2020-05-23 15:44:19 +02:00
Bartosz Taudul
ee22cf3b0c
Use cached source files.
2020-05-23 15:44:19 +02:00
Bartosz Taudul
d470202bca
Cached source files accessor.
2020-05-23 15:44:19 +02:00
Bartosz Taudul
964d65fd3b
Cache callstack/symbol/code source files.
2020-05-23 15:44:19 +02:00
Bartosz Taudul
f7341141cf
Cache zone source location 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
ae1155852a
Source file cache plumbing.
2020-05-23 15:44:18 +02:00
Bartosz Taudul
f38464cf55
Rename SymbolCodeData to MemoryBlock.
2020-05-23 14:54:16 +02:00
Bartosz Taudul
d052e4c79d
Substitution-less source file validator.
2020-05-23 14:54:16 +02:00
Bartosz Taudul
fa2559b3f0
Add StringRef hasher, comparator.
2020-05-23 14:54:16 +02:00
Bartosz Taudul
670a292416
Report whether string is available, or if a query was dispatched.
2020-05-23 13:08:57 +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
23de7cb294
Improve source file tooltip.
2020-05-15 01:39:14 +02:00
Bartosz Taudul
03c3a3e7c7
Select proper operand for LEA processing in AT&T mode.
2020-05-15 01:37:08 +02:00
Bartosz Taudul
992fba7e07
Move profiler FPS display to upper-right corner.
2020-05-14 17:53:46 +02:00
Bartosz Taudul
ba9b35dc3b
Don't memcpy to nullptr.
2020-05-14 17:38:48 +02:00
Bartosz Taudul
c8ff8540f9
Sleep when connection attempt fails.
2020-05-14 02:27:57 +02:00
Bartosz Taudul
7ea9c4baf2
Proper locking for queue/in-flight queries.
2020-05-13 18:52:20 +02:00
Bartosz Taudul
7d57a2ea6d
Cast to correct type.
2020-05-13 18:38:40 +02:00
Bartosz Taudul
3f3378e13a
Fix typo.
2020-05-13 18:37:37 +02:00
Bartosz Taudul
8e11cd5ebb
Add support for custom text in ImportEventTimeline.
2020-05-12 11:44:36 +02:00
Bartosz Taudul
1c8aece53c
No saving if there's no file selector.
2020-05-11 22:13:07 +02:00
Bartosz Taudul
e330b96b3d
Allow saving only lines within jump range.
2020-05-11 21:59:45 +02:00
Bartosz Taudul
0790e92cad
Support saving asm range.
2020-05-11 21:12:43 +02:00
Bartosz Taudul
9d5d116014
Extract asm saving to a separate function.
2020-05-11 21:08:50 +02:00
Dmitry Ivanov
8f509dd41a
Make TracySourceView.cpp build with somewhat old clang
...
This was the only issue preventing build on macOS High Sierra with whatever version of clang it has.
2020-05-11 16:23:50 +02:00
Bartosz Taudul
dafecf2a19
Allow enumerating asm lines from a given base instruction.
2020-05-11 13:35:49 +02:00
Bartosz Taudul
8a7913c095
Update xxh3 to master @ ea9c098e93.
2020-05-11 02:33:12 +02:00
Bartosz Taudul
e9f93f5bc7
Send lean frame images.
2020-05-10 20:16:08 +02:00
Bartosz Taudul
03b5dfacd6
Send lean callstack samples.
2020-05-10 20:00:51 +02:00
Bartosz Taudul
09388f3c99
Send lean callstack allocs.
2020-05-10 19:56:36 +02:00
Bartosz Taudul
5a774c82cc
Send lean callstacks.
2020-05-10 19:43:12 +02:00
Bartosz Taudul
f0ade07be8
Send lean memory callstacks.
2020-05-10 19:28:08 +02:00
Bartosz Taudul
2dc07fca0b
Send lean allocated source locations.
2020-05-10 19:20:59 +02:00
Bartosz Taudul
50c66174dd
Add ability to show callstack to an asm line.
2020-05-10 16:56:38 +02:00
Bartosz Taudul
2f8e817e16
Make PackPointer() part of worker's interface.
2020-05-10 16:56:13 +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
dee808dd1b
Display jump labels in the UI.
2020-05-09 15:14:33 +02:00
Bartosz Taudul
2543bb5e63
Shorter jump labels.
2020-05-09 15:14:25 +02:00
Bartosz Taudul
0de39a1d33
Construct location table during disassembly.
2020-05-09 14:58:06 +02:00
Bartosz Taudul
8cbd209ede
Display number of selected lines.
2020-05-09 13:53:11 +02:00
Bartosz Taudul
8caf6b02c6
Allow switching between Intel and AT&T assembly syntax.
2020-05-09 12:58:09 +02:00
Bartosz Taudul
ad4387a0c0
Implement saving disassembly to a file.
2020-05-09 02:37:18 +02:00
Bartosz Taudul
8b56dd5468
Prevent division by zero.
2020-05-08 01:55:03 +02:00
Bartosz Taudul
70818b49b9
Force connection popup boolean should decay.
2020-05-08 01:49:15 +02:00
Bartosz Taudul
5b29e65bc5
Initial value of DecayValue might be active.
2020-05-08 01:48:37 +02:00
Bartosz Taudul
2da6c6b6f5
Fix enforced connection popup position wrt viewports.
2020-05-07 15:27:11 +02:00
Bartosz Taudul
2ca6b6f2fe
Implement display of grouped instruction pointer statistics.
2020-05-07 02:33:37 +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
Bartosz Taudul
6fda74e281
Save/load cpu id.
2020-05-06 19:18:17 +02:00
Rokas Kupstys
e40f0c4f2e
Fix MinGW build.
2020-05-05 13:23:46 +03: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
74e55f584c
Small toggle button.
2020-05-03 20:49:21 +02: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
3aed0ba150
Unformatted colored text printing with uint32 color.
2020-05-03 14:33:11 +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
e7e3d1105c
Register usage is only available in capstone 4.x.
2020-05-02 03:09:16 +02:00
Bartosz Taudul
2e75990b6c
Fix wrong indent.
2020-05-02 02:34:15 +02:00
Bartosz Taudul
e132849fe2
Don't highlight lines with no dependencies.
2020-05-02 02:34:15 +02:00
Bartosz Taudul
95c9259193
Draw register dependency decorations on scroll bar.
2020-05-02 02:34:15 +02:00
Bartosz Taudul
50a5cce985
Reduce search range.
2020-05-02 02:34:15 +02:00
Bartosz Taudul
0fdb5e6592
Calculate register dependency data.
2020-05-02 02:34:15 +02:00
Bartosz Taudul
93f255e95b
Invalidate asm line selection when disassembly is performed.
2020-05-02 02:34:15 +02:00
Bartosz Taudul
654dc2b901
Detect conditional jumps.
2020-05-02 02:34:15 +02:00
Bartosz Taudul
4390aa1015
Print register data in asm lines.
2020-05-01 22:39:54 +02:00
Bartosz Taudul
f4b06ed1fc
Register line selection.
2020-05-01 20:35:09 +02:00
Bartosz Taudul
8b2b2f650f
Add space for register data in each asm line.
2020-05-01 20:35:09 +02:00
Bartosz Taudul
bb4b08e8cf
Don't display operands, if none.
2020-05-01 16:15:33 +02:00
Bartosz Taudul
47b8f052bd
Include flags register.
2020-05-01 16:14:27 +02:00
Bartosz Taudul
611bfe49df
Display list of read and write registers.
2020-05-01 13:20:19 +02:00
Bartosz Taudul
8014fce6e1
Store list of read and write registers for each asm instruction.
2020-05-01 13:01:47 +02:00
Bartosz Taudul
38116b88a5
Create x86 common register mapping table.
2020-05-01 13:01:47 +02:00
Bartosz Taudul
b74caae685
Handle ending a zone twice.
2020-04-30 19:05:13 +02:00
Bartosz Taudul
a40ba8f4e9
Switch query queue icon to satellite dish.
2020-04-30 18:41:08 +02:00
Bartosz Taudul
035bb2236d
Always preserve order of queries.
2020-04-30 02:25:25 +02:00
Bartosz Taudul
8fa0a4dc9e
Update mbps data block after terminating connection.
2020-04-29 02:36:38 +02:00
Bartosz Taudul
2175fa6701
Shorten labels.
2020-04-27 19:21:32 +02:00
Bartosz Taudul
83d6566020
Optional visualization of uarch latency.
2020-04-27 19:21:32 +02:00
Bartosz Taudul
d6e633edd0
Fix typo.
2020-04-27 16:10:43 +02:00
Bartosz Taudul
adc60bf394
Separate uarch data retrieval from tooltip display.
2020-04-27 15:31:32 +02:00
Bartosz Taudul
abd00e28b8
Hackish support for LEA variants.
2020-04-27 00:59:49 +02:00
Bartosz Taudul
70605fc8ed
Workaround issues with operand width mismatch.
2020-04-27 00:59:49 +02:00
Bartosz Taudul
5da60b53d0
Add micro architecture tooltips.
2020-04-27 00:59:49 +02:00
Bartosz Taudul
800f740fd5
Add micro architecture data.
2020-04-27 00:59:49 +02:00
Bartosz Taudul
f43755625c
Add uarch selection UI.
2020-04-26 15:00:40 +02:00
Bartosz Taudul
6266d482ae
Be explicit about displaying machine code.
2020-04-26 14:51:58 +02:00
Bartosz Taudul
dba594a857
Store CPU architecture.
2020-04-26 14:23:16 +02:00
Bartosz Taudul
5ae2c415b7
Draw a line indicating zeroth column of source code.
2020-04-25 13:52:21 +02:00
Bartosz Taudul
6b831173e4
Don't display asm counts if no asm available.
2020-04-25 13:51:58 +02:00
Bartosz Taudul
78a56640c3
Open connection popup when a connection is established.
2020-04-25 13:14:27 +02:00
Bartosz Taudul
368caddd00
Separate coloring for types and special values.
2020-04-25 01:01:10 +02:00
Bartosz Taudul
51659ed123
Enable syntax highlighting.
2020-04-25 00:21:15 +02:00
Bartosz Taudul
21506386c4
Allow specification of end address in TextColoredUnformatted.
2020-04-25 00:21:15 +02:00
Bartosz Taudul
3e583b1373
Add C++ tokenizer.
2020-04-25 00:21:15 +02:00
Bartosz Taudul
c87c464f23
Use proper symbol address.
2020-04-24 16:16:53 +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
9a77a59cb2
Display sample percentage columns only if there's data.
2020-04-24 00:49:38 +02:00
Bartosz Taudul
865593146a
Fix skipping symbol code.
2020-04-19 23:34:34 +02:00
Bartosz Taudul
e48095062b
Allow displaying machine code bytes in disassembly.
2020-04-19 16:07:24 +02:00
Bartosz Taudul
afb9bdce86
Store instruction lengths.
2020-04-19 16:07:24 +02:00
Bartosz Taudul
421f0895b7
Filter invalid jumps.
2020-04-19 16:07:24 +02:00
Bartosz Taudul
ea00efa857
Display disassembly failure notification.
2020-04-19 16:07:24 +02:00
Bartosz Taudul
b157d4c161
Detect disassembly failures.
2020-04-19 14:40:36 +02:00
Bartosz Taudul
c78e11872c
Fix jump arrow mouse hover detection.
2020-04-19 14:28:59 +02:00
Bartosz Taudul
1f3b6d01ab
Cosmetics.
2020-04-19 14:10:26 +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
b937ad101f
Fix handling of ImGui ID stack.
2020-04-17 19:28:39 +02:00
Bartosz Taudul
c79c052528
Display percentage numbers of sample composition times.
2020-04-17 19:28:38 +02:00
Bartosz Taudul
db9557fc84
Use separate texture compression context for saving traces.
2020-04-14 20:07:30 +02:00
Bartosz Taudul
c2dd3913d7
Cleanup context switch data.
2020-04-14 02:34:28 +02:00
Bartosz Taudul
9fc76990e1
Copy proper amount of memory.
2020-04-14 02:22:48 +02:00
Bartosz Taudul
366153a94f
No signed left shifts.
2020-04-14 02:22:48 +02:00
Bartosz Taudul
c54dc10464
Cleanup zone children vectors.
2020-04-14 02:22:47 +02:00
Bartosz Taudul
55f582faaf
Use correct print format specifier.
2020-04-14 02:22:47 +02:00
Bartosz Taudul
dd0fb49098
Fix typo.
2020-04-14 02:22:47 +02:00
Bartosz Taudul
b0a58d4664
Don't shift left negative values.
2020-04-14 02:22:47 +02:00
Bartosz Taudul
5233f8d4ad
Mark source lines which generated assembly.
2020-04-13 17:47:41 +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
a074d18dfa
Don't display source files, if none available.
2020-04-12 23:26:02 +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
ef56c7fa7c
Display source files time composition in selected function/symbol.
2020-04-12 17:08:58 +02:00
Bartosz Taudul
078014826b
Fix detection of hovering over source lines.
2020-04-12 16:21:03 +02:00
Bartosz Taudul
0794cf56ff
Sort inline functions list by time spent in function.
2020-04-12 16:13:39 +02:00
Bartosz Taudul
a0f7cb41c3
Merge building inline symbol list with stats collection.
2020-04-12 16:11:24 +02:00
Bartosz Taudul
de18dd46b6
Don't build inline symbols list, if not needed.
2020-04-12 16:05:49 +02:00
Bartosz Taudul
633902cce5
Display inline functions time composition in symbol.
2020-04-12 16:05:01 +02:00
Bartosz Taudul
58cf97ef5d
Display wall time in addition to sample counts.
2020-04-11 22:14:56 +02:00
Bartosz Taudul
c4bddf59e2
Allow access to sampling data before instrumentation is ready.
2020-04-11 18:21:46 +02:00
Bartosz Taudul
6c76c8098b
Draw hotness markers next to sample percentage counts.
2020-04-11 01:59:15 +02:00
Bartosz Taudul
2c11418d33
Calculate max sample counts during ip map creation.
2020-04-11 01:34:44 +02:00
Bartosz Taudul
5bc01124c2
Draw jump range and target on scroll bar, when highlighted.
2020-04-10 23:31:25 +02:00
Bartosz Taudul
ca66dc9ba0
More code deduplication.
2020-04-10 23:13:51 +02:00
Bartosz Taudul
ac37898331
Go to white-hot color for ip count over max.
2020-04-10 23:10:26 +02:00
Bartosz Taudul
126a587aa3
Less code duplication.
2020-04-10 23:07:52 +02:00
Bartosz Taudul
61828070c5
Display tooltip for sample percentage.
2020-04-10 23:03:47 +02:00
Bartosz Taudul
895e06d778
Draw asm line hotness.
2020-04-10 17:27:57 +02:00
Bartosz Taudul
f6400880b0
Scroll bar decorations for asm lines.
2020-04-10 17:27:57 +02:00
Bartosz Taudul
bcfd32e49f
Decorate source scroll bar with line hotness.
2020-04-10 17:27:57 +02:00
Bartosz Taudul
e51844eba3
Decorate source scroll bar with selected and highlighted line.
2020-04-10 16:56:56 +02:00
Bartosz Taudul
a6c0ac4273
Tighten assembly counts in source view.
2020-04-10 00:40:31 +02:00
Bartosz Taudul
14ec7ea6cd
Tighten line numbers in source view.
2020-04-10 00:37:46 +02:00
Bartosz Taudul
497e73182a
Ditto for source navigation.
2020-04-09 23:28:51 +02:00
Bartosz Taudul
072fed288a
Use left and right mouse buttons for asm navigation.
...
Left click on source line just selects the line and the corresponding
asm lines.
Right click does the above and focuses asm view on the first selected
line.
2020-04-09 23:12:17 +02:00
Bartosz Taudul
47d56f6259
Proper scaling of instruction pointer counts.
2020-04-09 22:52:44 +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
9d2c03bc5b
Allow showing sample data for whole symbol.
2020-04-09 22:23:57 +02:00
Bartosz Taudul
a2385a8b24
Use correct address range.
2020-04-09 22:21:21 +02:00
Bartosz Taudul
0e1c9e2cd1
Highlight source line corresponding to hovered asm line.
2020-04-09 22:02:06 +02:00
Bartosz Taudul
0791871955
Highlight asm lines for hovered source line.
2020-04-09 21:57:28 +02:00
Bartosz Taudul
1e965edb54
Don't separate inlines by default.
2020-04-09 19:44:42 +02:00
Bartosz Taudul
a339d397ce
Don't select addresses outside symbol.
2020-04-09 14:10:07 +02:00
Bartosz Taudul
241f59b59f
Sprinkle some icons.
2020-04-09 02:33:02 +02:00
Bartosz Taudul
554366ad9f
Search for address within current symbol.
2020-04-09 02:12:49 +02:00
Bartosz Taudul
d2ebc58be3
Set sensible combo box heights.
2020-04-09 02:09:54 +02:00
Bartosz Taudul
0f42dc2e4c
Fix source-less sample count calculations.
2020-04-09 02:04:22 +02:00
Bartosz Taudul
3177865fc2
Follow jump by clicking on jump arrows.
2020-04-09 02:02:06 +02:00
Bartosz Taudul
a715df6338
Tighten assembly source location display.
2020-04-09 01:52:22 +02:00
Bartosz Taudul
6dd765c101
Tighten mnemonic display.
2020-04-09 01:45:38 +02:00
Bartosz Taudul
bae08c27c8
Tighter assembly address display.
2020-04-09 01:31:27 +02:00
Bartosz Taudul
643c0867ed
Add jump arrows tooltip.
2020-04-09 01:09:57 +02:00
Bartosz Taudul
2cd789662b
Handle source-less asm lines selection.
2020-04-08 23:59:21 +02:00
Bartosz Taudul
08c58fe8e3
Separate asm lines selection.
2020-04-08 23:59:10 +02:00
Bartosz Taudul
25346c7a55
Disable movement in source view sub-children.
2020-04-08 23:32:36 +02:00
Bartosz Taudul
450229f5e4
Only change assembly target line when necessary.
2020-04-08 23:30:42 +02:00
Bartosz Taudul
3a1f980a36
Prevent opening obsolete source files.
2020-04-08 23:07:59 +02:00
Bartosz Taudul
3e2260bdcb
Add color boxes to file selection.
2020-04-08 23:06:38 +02:00
Bartosz Taudul
d300d17f9e
Match source and assembly selection.
2020-04-08 22:57:42 +02:00
Bartosz Taudul
bb338a1c97
Symbol file selector.
2020-04-08 22:25:36 +02:00
Bartosz Taudul
a1bad4b7be
Build list of symbol source files.
2020-04-08 22:18:00 +02:00
Bartosz Taudul
0551cd8e44
Switching between source files from asm view.
2020-04-08 22:10:58 +02:00
Bartosz Taudul
3f01d3bcb1
Selection of inlined function within symbol.
2020-04-08 22:04:33 +02:00
Bartosz Taudul
006919ec55
Mixed source/assembly symbol view.
2020-04-08 22:04:00 +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
f59f4f266e
Add inline symbols list accessor.
2020-04-08 15:34:14 +02:00
Bartosz Taudul
2a06f1545b
Store count of proper and inline symbols in trace dump.
2020-04-08 12:52:06 +02:00
Bartosz Taudul
1da1d31e1c
Store list of inline symbols.
2020-04-08 12:44:12 +02:00
Bartosz Taudul
a7fffe7e13
Separate opening source and symbol views.
2020-04-08 02:12:09 +02:00
Bartosz Taudul
09cf160088
Split source and symbol views in SourceView.
2020-04-08 01:58:23 +02:00
Bartosz Taudul
1c0ec60b23
Don't try to display assembly line counts if no symbol is selected.
2020-04-08 01:48:22 +02:00
Bartosz Taudul
2ad3f9b51f
Index data is already available.
2020-04-05 15:09:13 +02:00
Bartosz Taudul
f1f4f48c38
Perform rate distortion optimization on frame images.
2020-04-05 15:04:18 +02:00
Bartosz Taudul
b19d5731ac
Move DXT1 index fixup to texture compression class.
2020-04-05 14:05:43 +02:00
Bartosz Taudul
6d435e08c8
Handle nullptr in FindStringIdx.
2020-04-04 14:42:00 +02:00
Bartosz Taudul
38bfa7bdb6
Include return instructions in jump out list.
2020-04-04 14:30:48 +02:00
Bartosz Taudul
8c260c9d12
Draw jump outs from symbols.
2020-04-04 14:30:47 +02:00
Bartosz Taudul
268af5b67c
Adapt to DPI scaling.
2020-04-04 14:30:47 +02:00
Bartosz Taudul
78a0773f38
Collect jumps outside symbol.
2020-04-04 13:51:55 +02:00
Bartosz Taudul
e02e595eec
Align jump arrows to pixels.
2020-04-04 13:42:19 +02:00
Bartosz Taudul
aae161e31a
Draw jumps in assembly view.
2020-04-04 03:41:10 +02:00
Bartosz Taudul
bda5c1d13e
Ignore out-of-symbol jumps.
2020-04-04 03:13:21 +02:00
Bartosz Taudul
f2b044438d
Don't print empty text, just advance cursor.
2020-04-04 02:45:01 +02:00