Commit Graph

420 Commits

Author SHA1 Message Date
Bartosz Taudul
0fb5f012ce Lua profiling framework. No source location transfer yet. 2017-11-05 15:06:28 +01:00
Bartosz Taudul
9524b6447e Pack LockEvent data, saving one byte. 2017-10-29 16:49:22 +01:00
Bartosz Taudul
34123de977 Reduce custom vector size 16 -> 13 bytes. 2017-10-28 23:12:11 +02:00
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
5ebbf83eb3 Time variables should be signed. 2017-10-28 21:36:47 +02:00
Bartosz Taudul
adeb9b74f9 Make while condition explicit. 2017-10-28 21:35:38 +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
339c177ee8 Sort lock map.
It is displayed in UI, so order is important.
2017-10-24 22:30:43 +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
97b3cccb1a 64MB slab size. 2017-10-22 15:36:22 +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
cc1715ae98 Implement Vector::insert( it, begin, end ). 2017-10-19 23:26:02 +02:00
Bartosz Taudul
82476a310c Implement Vector::clear(). 2017-10-19 23:25:49 +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
026a27aa05 Implement front() in custom vector. 2017-10-19 20:34:07 +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
8958780b18 Time must be signed. 2017-10-18 23:36:50 +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
1aaab3c5e4 Use 32 bits to store lock id.
This makes queue item size 32 bytes. Queue operations can now be faster,
because multiplication by 33 is replaced by shift by 5.
2017-10-13 20:05:38 +02:00
Bartosz Taudul
ec789d60e8 Store source location color in 24 bits. 2017-10-13 19:59:18 +02:00