Commit Graph

3179 Commits

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