Commit Graph

1687 Commits

Author SHA1 Message Date
Bartosz Taudul
fadf8e3e0a Can't read negative number of bytes.
This completely ignores error handling, which probably should be added.
The code behavior doesn't change, as the existing comparisons and
asserts already promoted the signed value to unsigned.
2019-06-22 14:08:48 +02:00
Bartosz Taudul
1c41229766 Use proper type for buffer size comparison. 2019-06-22 14:07:53 +02:00
Bartosz Taudul
70a7033a64 Use proper type for iteration. 2019-06-22 14:07:26 +02:00
Bartosz Taudul
1ea647a1dd Use proper type for srcloc highlight decay value. 2019-06-22 14:06:25 +02:00
Bartosz Taudul
aaefd6e1d6 Simplify code. 2019-06-22 14:06:10 +02:00
Bartosz Taudul
6a82f666a7 Cosmetics. 2019-06-22 14:05:18 +02:00
Bartosz Taudul
54ae4c84ba Silence warning about unused variable. 2019-06-22 14:04:48 +02:00
Bartosz Taudul
de953bfaa8 Use proper data type for callstack storage in GPU zones. 2019-06-22 14:04:27 +02:00
Bartosz Taudul
323f0e1ae3 Don't create variable for exception in catch block. 2019-06-22 13:41:24 +02:00
Bartosz Taudul
eb4c7ca9ea Ignore useless warnings. 2019-06-22 13:40:00 +02:00
Bartosz Taudul
a3ce08a9f9 Display zone time as percentage of average zone time. 2019-06-22 13:22:13 +02:00
Bartosz Taudul
5fde56d96a Remove hidden zone time without profiling tooltip. 2019-06-22 13:10:46 +02:00
Bartosz Taudul
850815534e Insert frame mark at beginning of on-demand connection. 2019-06-21 19:39:41 +02:00
Bartosz Taudul
659ef87974 Animate highlighted messages on the timeline. 2019-06-21 14:25:51 +02:00
Bartosz Taudul
bb44e80e5a Use smaller UI elements in selected places. 2019-06-21 14:15:46 +02:00
Bartosz Taudul
8259816de3 Improve playback interruptions on user input. 2019-06-21 13:08:41 +02:00
Bartosz Taudul
ae4f9663aa Selecting frames stops playback. 2019-06-19 20:05:23 +02:00
Bartosz Taudul
51135c1d20 Pulse hover-info line on histograms. 2019-06-19 20:01:41 +02:00
Bartosz Taudul
d44c4b00fb Implement outliers cutoff in compare menu. 2019-06-18 22:27:25 +02:00
Bartosz Taudul
1a32edebf2 Extract text printing functions. 2019-06-18 20:43:28 +02:00
Bartosz Taudul
99e638b3fc Normalize values during compare by default. 2019-06-18 19:41:20 +02:00
Bartosz Taudul
53863fe0e7 Set sane initial window sizes. 2019-06-17 23:49:10 +02:00
Bartosz Taudul
38ebc2e989 Add icon to "go to frame" button. 2019-06-17 01:13:32 +02:00
Bartosz Taudul
eed849c589 Add reset button to min bin value fields. 2019-06-17 01:12:24 +02:00
Bartosz Taudul
add5c0fb87 Perform proper division. 2019-06-17 01:09:25 +02:00
Bartosz Taudul
b2bbd95430 Changing log time requires bin cache reset. 2019-06-17 01:05:46 +02:00
Bartosz Taudul
f27cead040 Add hovered frame markers on histogram. 2019-06-17 01:01:56 +02:00
Bartosz Taudul
099933e66d Add outlier removal to frame time histogram. 2019-06-17 00:44:34 +02:00
Bartosz Taudul
efe65e2e64 Display currently hovered zone on histogram. 2019-06-16 17:14:47 +02:00
Bartosz Taudul
6a4f7ce1ca Track currently hovered zone. 2019-06-16 17:05:56 +02:00
Bartosz Taudul
6e8b5381a5 Ctrl-click on a zone to go straight to zone statistics. 2019-06-16 17:00:25 +02:00
Bartosz Taudul
d361261993 Open playback from frame using ctrl+left click. 2019-06-16 16:49:21 +02:00
Bartosz Taudul
d683699ba9 Don't recalculate histogram bins every frame.
This remedies slowdown that was only visible when a histogram of a large
number of zones (~100 million) was displayed. The slowdown was caused by
std::accumulate() calls over whole set of zones.
2019-06-16 16:41:52 +02:00
Bartosz Taudul
14398dd4e8 Move bin setup closer to bin usage. 2019-06-16 16:29:18 +02:00
Bartosz Taudul
761405e2a7 Clip histogram highlight to graph area. 2019-06-16 16:23:24 +02:00
Bartosz Taudul
89f798158f Implement outlier cutoff on histogram. 2019-06-16 01:58:44 +02:00
Bartosz Taudul
8009c6412e Add "minimum values in bin" parameter to histogram. 2019-06-16 01:58:44 +02:00
Bartosz Taudul
4186a71ee7 Cache sorted begin and end iterators. 2019-06-16 01:28:36 +02:00
Bartosz Taudul
26f223e4cd Don't shrink histogram bin buffers. 2019-06-16 00:25:22 +02:00
Bartosz Taudul
31a4a45b14 Ignore memory free faults if running on apple.
There's a case in MoltenVK initialization where overloading operator new
and operator delete works for std::string destruction, but not
construction.
2019-06-13 14:15:17 +02:00
Bartosz Taudul
516bdcec9b Rewrite playback logic. 2019-06-13 00:12:06 +02:00
Bartosz Taudul
c43f8562ec Rename "sync view" to "sync timeline". 2019-06-12 23:46:14 +02:00
Bartosz Taudul
bdfd2c07be Right-click on a frame to set frame in playback. 2019-06-12 23:14:19 +02:00
Bartosz Taudul
afa967afb0 Flip frame image if need be. 2019-06-12 15:30:08 +02:00
Bartosz Taudul
37d1457b44 Frame image may need flipping. 2019-06-12 15:28:32 +02:00
Bartosz Taudul
29fd4b1fe9 Don't animate frame changes during playback. 2019-06-12 13:25:45 +02:00
Bartosz Taudul
a936f22a91 Add frame images playback window. 2019-06-12 01:48:11 +02:00
Bartosz Taudul
eb6ac5e6e1 Store frame reference in frame images. 2019-06-12 00:55:02 +02:00
Bartosz Taudul
38b76ea32d Add frame images vector accessor. 2019-06-12 00:14:44 +02:00
Bartosz Taudul
5f8eadfb16 Release zone id stack. 2019-06-09 17:56:41 +02:00
Bartosz Taudul
a3173965d6 Same for Vis() reference. 2019-06-09 17:51:37 +02:00
Bartosz Taudul
2aa6f70765 Drawing locks may invalidate Vis() iterator. 2019-06-09 17:46:59 +02:00
Bartosz Taudul
b1f8d9fba1 Send server termination query on server disconnect. 2019-06-09 16:10:49 +02:00
Bartosz Taudul
2c780f1af4 Allow sending immediate termination query from server. 2019-06-09 16:10:49 +02:00
Bartosz Taudul
d6d7b82529 Ignore invalid frame images in on-demand mode. 2019-06-09 15:37:49 +02:00
Bartosz Taudul
50cda7720f Handle frame image instrumentation failures. 2019-06-09 13:44:53 +02:00
Bartosz Taudul
bef1988800 Compress frame images using LZ4. 2019-06-08 12:17:18 +02:00
Bartosz Taudul
fc5a8f7e3a Assign frame image to the correct frame (including offset). 2019-06-07 20:13:08 +02:00
Bartosz Taudul
8c912890f0 Proper case in includes. 2019-06-07 01:35:35 +02:00
Bartosz Taudul
ff5170d0e9 Silence warnings. 2019-06-07 01:03:28 +02:00
Bartosz Taudul
42a30bffe1 Frame images are now ETC1 compressed. 2019-06-07 00:31:51 +02:00
Bartosz Taudul
646e7327b8 Show loading progress of frame images. 2019-06-06 23:40:37 +02:00
Bartosz Taudul
f8a4909c96 Display number of frame images in a trace. 2019-06-06 23:21:36 +02:00
Bartosz Taudul
9cd95db4e3 Delay creation of frame image texture. 2019-06-06 23:14:49 +02:00
Bartosz Taudul
129155946b Actually set current texture pointer. 2019-06-06 23:10:01 +02:00
Bartosz Taudul
6b2741ccdb Save/load frame images. 2019-06-06 23:08:19 +02:00
Bartosz Taudul
6ae4afa0f4 Display frame images also on frame time graph. 2019-06-06 22:43:39 +02:00
Bartosz Taudul
08fb2b7337 Tooltip cosmetics. 2019-06-06 22:32:20 +02:00
Bartosz Taudul
c46576a68c Flip UV. 2019-06-06 22:22:57 +02:00
Bartosz Taudul
cd2f572a2f Use proper index. 2019-06-06 22:22:57 +02:00
Bartosz Taudul
beea31edd0 Show frame images in frame tooltips. 2019-06-06 22:22:57 +02:00
Bartosz Taudul
82d4fe7236 Add texture wrapper. 2019-06-06 22:14:51 +02:00
Bartosz Taudul
af56f41e32 Add frame image accessor. 2019-06-06 22:14:51 +02:00
Bartosz Taudul
34b84bb284 Add frame image index to frame data. 2019-06-06 21:44:48 +02:00
Bartosz Taudul
e5bb6011c5 Frame image transfer prototype. 2019-06-06 21:39:54 +02:00
Bartosz Taudul
a37348c5c7 Increase contrast. 2019-06-06 01:45:41 +02:00
Bartosz Taudul
2b917c6adf Draw index area labels with contrast. 2019-06-06 01:40:23 +02:00
Bartosz Taudul
45039fc417 Don't format colored text where not necessary. 2019-06-03 01:36:03 +02:00
Bartosz Taudul
4f5286a860 Add unformatted colored text extension function. 2019-06-03 01:35:53 +02:00
Bartosz Taudul
ff6768986e Move imgui extension function to an appropriate place. 2019-06-03 01:35:32 +02:00
Bartosz Taudul
c433e76c7a Use TextUnformatted in TextCentered. 2019-06-03 01:28:45 +02:00
Bartosz Taudul
42fefde161 Protect against plot range equal zero. 2019-06-03 01:19:01 +02:00
Bartosz Taudul
79215ea73e Implement linked selection in compare menu. 2019-06-02 15:40:19 +02:00
Bartosz Taudul
c05766e637 Display notification about worker background tasks. 2019-06-02 15:00:50 +02:00
Bartosz Taudul
5681096486 Track status of worker background tasks. 2019-06-02 15:00:38 +02:00
Bartosz Taudul
96b1df67b9 Get proper yMin, yMax values. 2019-06-02 13:58:30 +02:00
Bartosz Taudul
9bbaab8897 Draw on a correct window. 2019-06-02 13:40:35 +02:00
Bartosz Taudul
3a561b4eed Save thread state should be atomic. 2019-06-02 13:15:55 +02:00
Bartosz Taudul
0059cb3ab0 Switch default namespace display to "short". 2019-06-02 12:57:42 +02:00
Bartosz Taudul
7aca6b72d1 Don't block worker when in save file dialog. 2019-05-28 19:57:18 +02:00
Bartosz Taudul
c93170cd42 Move saving trace dump to a separate thread. 2019-05-28 19:56:18 +02:00
Bartosz Taudul
845f3a2ddf Use std::shared_mutex for locking worker access. 2019-05-28 19:21:53 +02:00
Bartosz Taudul
145ca30df9 There's no __popcnt64 in 32 bit winapi. 2019-05-28 18:18:54 +02:00
Bartosz Taudul
b3812146cb Fix atomics initialization. 2019-05-27 14:09:55 +02:00
Bartosz Taudul
61d775ecc8 Calculate end point before loop. 2019-05-19 16:26:59 +02:00
Bartosz Taudul
8f85a0da2c Don't check twice for the same thing. 2019-05-19 16:23:19 +02:00
Bartosz Taudul
007e434a05 Force inline FillPages(). 2019-05-19 13:46:53 +02:00
Bartosz Taudul
9122d3516c Force inline GetPage(). 2019-05-19 13:45:02 +02:00
Bartosz Taudul
30c398cd96 Don't allocate memory for empty pages in memory map. 2019-05-19 13:15:54 +02:00
Bartosz Taudul
952e466287 Rearrange code. 2019-05-19 12:47:45 +02:00