Commit Graph

384 Commits

Author SHA1 Message Date
Bartosz Taudul
1a117b330f Prevent lock event overdraw.
If two lock events would overdraw (and they were), it was very easy for
a non-blocking zone to completely hide a blocking one.
2017-10-28 22:44:41 +02:00
Bartosz Taudul
0edbe38334 Improve locks visibility. 2017-10-28 22:34:52 +02:00
Bartosz Taudul
2988dda68f Fix for missing unended zones. 2017-10-28 22:20:39 +02:00
Bartosz Taudul
39ac41bc19 Store source location on 32 bits, not 64. 2017-10-28 22:14:01 +02:00
Bartosz Taudul
fb6c91b552 Simplify switch. 2017-10-28 22:11:24 +02:00
Bartosz Taudul
db16aecf64 Try to display only frame time, if no space for full text. 2017-10-28 21:55:01 +02:00
Bartosz Taudul
2a6ccf8ee9 Fix some warnings. 2017-10-28 21:50:06 +02:00
Bartosz Taudul
6aea2a0348 Enforce minimum size for zones and locks. 2017-10-28 16:14:52 +02:00
Bartosz Taudul
b6244d1180 Reorder checks. 2017-10-28 15:48:05 +02:00
Bartosz Taudul
f89713b7c6 Proper tooltip for condensed lock events. 2017-10-28 15:33:34 +02:00
Bartosz Taudul
32fc88de7b Disable rounding on proper rectangle. 2017-10-28 15:30:20 +02:00
Bartosz Taudul
6832a4ae57 Better lock merging. 2017-10-28 15:29:25 +02:00
Bartosz Taudul
958e472751 Better lock combining. 2017-10-28 15:24:25 +02:00
Bartosz Taudul
3e0b1f0ad5 Lock drawing optimization. 2017-10-28 15:15:07 +02:00
Bartosz Taudul
fcc76412fe Move common variables out of loop. 2017-10-28 14:25:35 +02:00
Bartosz Taudul
591da109a8 Outer loop check is no longer needed. 2017-10-28 14:15:18 +02:00
Bartosz Taudul
25e9ae4b68 Simplify code. 2017-10-28 14:14:26 +02:00
Bartosz Taudul
d1789f1e3a Stay in fast loop until there's something to draw. 2017-10-28 14:08:10 +02:00
Bartosz Taudul
257f9818ed Fast iteration until state != Nothing. 2017-10-28 13:56:35 +02:00
Bartosz Taudul
433a80c2df Move lock state progression to a separate function. 2017-10-28 13:44:46 +02:00
Bartosz Taudul
09c9502061 Condense code. 2017-10-28 13:19:32 +02:00
Bartosz Taudul
a2a314678b Helper function for determining if other threads are waiting. 2017-10-28 12:48:05 +02:00
Bartosz Taudul
71504c4e53 Document lock state colors. 2017-10-28 12:40:25 +02:00
Bartosz Taudul
e5865cb23e Optimize drawing messages. 2017-10-28 12:37:34 +02:00
Bartosz Taudul
3163563a27 Fix crash on unended lock highlight. 2017-10-26 02:06:30 +02:00
Bartosz Taudul
db48cd6c1f Display threads that have acquired a lock. 2017-10-26 00:42:16 +02:00
Bartosz Taudul
f3bac060a6 Same thing for contended locks. 2017-10-25 23:45:53 +02:00
Bartosz Taudul
016048a761 Properly detect and show recursive lock release. 2017-10-25 23:39:56 +02:00
Bartosz Taudul
f013dfe706 Properly label recursive lock wait sections. 2017-10-25 23:37:10 +02:00
Bartosz Taudul
01b2e64985 Properly show recursive lock wait sections. 2017-10-25 23:36:08 +02:00
Bartosz Taudul
e16f784617 Proper handling of recursive mutices. 2017-10-25 23:30:51 +02:00
Bartosz Taudul
742e4e2893 Use proper type. 2017-10-25 22:56:02 +02:00
Bartosz Taudul
011253ac47 Display lock and wait counts. 2017-10-25 22:35:12 +02:00
Bartosz Taudul
8f814b2537 Optimize drawing zone frames. 2017-10-22 17:48:01 +02:00
Bartosz Taudul
73d23320ee Move string helper functions out of tracy::View. 2017-10-22 17:47:40 +02:00
Bartosz Taudul
262dfa53e9 Display lock number on lock list in options. 2017-10-22 17:30:02 +02:00
Bartosz Taudul
1967ce871a Fix getting parent of not ended zone. 2017-10-22 17:09:33 +02:00
Bartosz Taudul
cc8683a399 Store TextData pointer as an index in array.
This further reduces ZoneEvent size by 4 bytes.
2017-10-22 16:40:15 +02:00
Bartosz Taudul
2e6350877d Remove parent pointer from ZoneEvent. 2017-10-22 16:15:27 +02:00
Bartosz Taudul
b72d4b05de Remove dead code. 2017-10-22 15:40:56 +02:00
Bartosz Taudul
7345ca5aa6 Rename Event to ZoneEvent. 2017-10-22 15:37:24 +02:00
Bartosz Taudul
eff6015aad Fix combo list. 2017-10-22 15:27:07 +02:00
Bartosz Taudul
5b20f0008f Optional namespace shortening. 2017-10-22 13:56:05 +02:00
Bartosz Taudul
caec31731f Add ability to hide uncontended locks. 2017-10-22 13:32:27 +02:00
Bartosz Taudul
92a38a43d5 Add ability to hide individual locks. 2017-10-22 13:26:11 +02:00
Bartosz Taudul
ba5312f429 Ability to completely hide plots. 2017-10-22 13:17:34 +02:00
Bartosz Taudul
133db4c68e Ability to completely hide threads. 2017-10-22 13:13:26 +02:00
Bartosz Taudul
bd8d423d16 Use small temporary buffer instead of growing one. 2017-10-21 14:27:38 +02:00
Bartosz Taudul
31dec96d0c Don't calculate min-max range of a large point quantity. 2017-10-21 14:27:38 +02:00
Bartosz Taudul
5f7dad1889 Don't do unnecessary hover checks. 2017-10-21 14:27:38 +02:00
Bartosz Taudul
c28b3a420f Delay insertion of postponed plot items.
This further reduces number of memmoves that need to be performed on a
vector, which results in net increased throughput.
2017-10-21 13:32:51 +02:00
Bartosz Taudul
75e3dd175a One function for adding threads. 2017-10-21 13:14:20 +02:00
Bartosz Taudul
fa985940f7 Check thread name when adding messages. 2017-10-21 13:05:37 +02:00
Bartosz Taudul
807d3c42be Use slab allocator for server allocations. 2017-10-21 13:01:57 +02:00
Bartosz Taudul
07cb693cbb Separate slab init/noinit allocation functions. 2017-10-21 12:54:12 +02:00
Bartosz Taudul
ad338a7cfd Fix message literals. 2017-10-21 12:39:26 +02:00
Bartosz Taudul
b7800be627 Perform bulk insertion of plot points. 2017-10-19 23:26:21 +02:00
Bartosz Taudul
cf94b1d2e8 Add missing locks. 2017-10-19 23:10:47 +02:00
Bartosz Taudul
476597f5ed Adaptive display compression range. 2017-10-19 21:05:59 +02:00
Bartosz Taudul
44cc0827d4 Store pointers to PlotItems. 2017-10-19 21:04:11 +02:00
Bartosz Taudul
7329eb6e99 Display plot points count with separators. 2017-10-19 20:34:48 +02:00
Bartosz Taudul
6e4343c043 Use custom vector to store plot items. 2017-10-19 20:14:31 +02:00
Bartosz Taudul
0519df4dfc Reduce accuracy to decrease memory load. 2017-10-19 19:56:13 +02:00
Bartosz Taudul
5278bb29e6 Don't sort all values in a compressed range. 2017-10-19 19:43:27 +02:00
Bartosz Taudul
fd22fed773 Manually manage temporary plot buffer. 2017-10-19 19:09:40 +02:00
Bartosz Taudul
6e5ccf8391 Store values, not pointers to PlotItems. 2017-10-19 18:28:11 +02:00
Bartosz Taudul
c5eef172f1 Adapt "recording" circle size to font size. 2017-10-18 23:25:35 +02:00
Bartosz Taudul
4f3a64be9d Optimize drawing plots. 2017-10-18 22:29:59 +02:00
Bartosz Taudul
58ef271356 Add separator to zone count. 2017-10-18 20:35:01 +02:00
Bartosz Taudul
ac71622c0c Add separators to printed values. 2017-10-18 20:33:49 +02:00
Bartosz Taudul
cdde2ea2a3 Cut off trailing zeros when printing floating point values. 2017-10-18 20:18:33 +02:00
Bartosz Taudul
7c47edc64f Terminate connection handshake. 2017-10-18 18:48:51 +02:00
Bartosz Taudul
6d48404934 4KB is too small for some messages. Use 64KB buffer.
OpenGL extensions list bites in the ass again.
2017-10-17 01:21:00 +02:00
Bartosz Taudul
c0e5dd0369 Visual differentiation of tracy init from other frames. 2017-10-17 01:17:55 +02:00
Bartosz Taudul
1e3476cf36 Transfer profiler initialization time. 2017-10-17 01:10:38 +02:00
Bartosz Taudul
acc1d9d834 Measurement of time period by LMB dragging. 2017-10-15 16:42:56 +02:00
Bartosz Taudul
84abfadc72 Horizontal zone view dragging with RMB. 2017-10-15 16:20:45 +02:00
Bartosz Taudul
5b9fcddfb3 String literal message transfer. 2017-10-15 13:06:49 +02:00
Bartosz Taudul
eb95d65622 Fix types in std::max. 2017-10-14 18:48:44 +02:00
Bartosz Taudul
ad95813ba0 Message highlighting. 2017-10-14 15:47:06 +02:00
Bartosz Taudul
bf8f369e33 Increase plot point active hover area. 2017-10-14 15:29:04 +02:00
Bartosz Taudul
503ef8bcbc Save message data. 2017-10-14 15:26:02 +02:00
Bartosz Taudul
bd7f8111a6 Lock id size changed in data dump. 2017-10-14 15:21:15 +02:00
Bartosz Taudul
30fd899a90 Display messages in threads. 2017-10-14 15:03:28 +02:00
Bartosz Taudul
317b23c7c3 Assign messages to threads. 2017-10-14 14:46:03 +02:00
Bartosz Taudul
3ba349565a Message list window. 2017-10-14 14:36:30 +02:00
Bartosz Taudul
fa8030009f Store messages. 2017-10-14 14:28:04 +02:00
Bartosz Taudul
ec789d60e8 Store source location color in 24 bits. 2017-10-13 19:59:18 +02:00
Bartosz Taudul
ed55fbfacb Save/load plot data. 2017-10-13 16:04:20 +02:00
Bartosz Taudul
348661c9df Display number of plot points per second. 2017-10-13 15:55:09 +02:00
Bartosz Taudul
e3abc8b52a Fix min, max value setting. 2017-10-13 15:46:00 +02:00
Bartosz Taudul
4066b9ae30 Add plot information tooltip. 2017-10-13 15:44:24 +02:00
Bartosz Taudul
40d7a26b37 Allow hiding plots. 2017-10-13 15:41:20 +02:00
Bartosz Taudul
4ed905ca88 Plot can't be empty. 2017-10-13 15:36:16 +02:00
Bartosz Taudul
591fbdf75a Store min, max values in plot. 2017-10-13 15:32:59 +02:00
Bartosz Taudul
5deb1c51dd Can't modify both variables. 2017-10-13 15:31:38 +02:00
Bartosz Taudul
d1c43ef917 Draw vertical line on mouse position in zone view. 2017-10-13 15:26:18 +02:00
Bartosz Taudul
b217e6ab30 Add lousy plot values tooltip. 2017-10-13 15:15:57 +02:00
Bartosz Taudul
f32114cb35 Draw plot points in a separate function. 2017-10-13 15:09:01 +02:00
Bartosz Taudul
d05827135d Draw plots. 2017-10-13 14:54:32 +02:00