1
0
mirror of https://github.com/wolfpld/tracy.git synced 2025-03-20 07:40:02 +08:00
Commit Graph

3323 Commits

Author SHA1 Message Date
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