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

202 Commits

Author SHA1 Message Date
Bartosz Taudul f8ef5b726a Store time deltas, instead of absolute time in trace dumps.
This change greatly reduces the size of saved dumps, but increase the
cost of processing during loading. One notable outlier in the dataset
below is mem.tracy, which increased in size, even if changes in the
memory dump saving scheme decrease size of the other traces.

041/aa.tracy (0.4.1) {18987 KB} -> 042/aa.tracy (0.4.2) {10140 KB}  53.40% size change
041/android.tracy (0.4.1) {696753 KB} -> 042/android.tracy (0.4.2) {542738 KB}  77.90% size change
041/asset-new.tracy (0.4.1) {97163 KB} -> 042/asset-new.tracy (0.4.2) {78402 KB}  80.69% size change
041/asset-new-id.tracy (0.4.1) {105683 KB} -> 042/asset-new-id.tracy (0.4.2) {84341 KB}  79.81% size change
041/asset-old.tracy (0.4.1) {100205 KB} -> 042/asset-old.tracy (0.4.2) {80688 KB}  80.52% size change
041/big.tracy (0.4.1) {2246014 KB} -> 042/big.tracy (0.4.2) {943083 KB}  41.99% size change
041/crash.tracy (0.4.1) {143 KB} -> 042/crash.tracy (0.4.2) {131 KB}  91.39% size change
041/crash2.tracy (0.4.1) {3411 KB} -> 042/crash2.tracy (0.4.2) {1425 KB}  41.80% size change
041/darkrl.tracy (0.4.1) {31818 KB} -> 042/darkrl.tracy (0.4.2) {15897 KB}  49.96% size change
041/darkrl2.tracy (0.4.1) {18778 KB} -> 042/darkrl2.tracy (0.4.2) {8002 KB}  42.62% size change
041/darkrl-old.tracy (0.4.1) {151346 KB} -> 042/darkrl-old.tracy (0.4.2) {67945 KB}  44.89% size change
041/deadlock.tracy (0.4.1) {53 KB} -> 042/deadlock.tracy (0.4.2) {52 KB}  98.55% size change
041/gn-opengl.tracy (0.4.1) {45860 KB} -> 042/gn-opengl.tracy (0.4.2) {30983 KB}  67.56% size change
041/gn-vulkan.tracy (0.4.1) {45618 KB} -> 042/gn-vulkan.tracy (0.4.2) {31349 KB}  68.72% size change
041/long.tracy (0.4.1) {1583550 KB} -> 042/long.tracy (0.4.2) {1225316 KB}  77.38% size change
041/mem.tracy (0.4.1) {1243058 KB} -> 042/mem.tracy (0.4.2) {1369291 KB}  110.15% size change
041/multi.tracy (0.4.1) {14519 KB} -> 042/multi.tracy (0.4.2) {8110 KB}  55.86% size change
041/new.tracy (0.4.1) {1439 KB} -> 042/new.tracy (0.4.2) {1108 KB}  77.01% size change
041/q3bsp-mt.tracy (0.4.1) {1414323 KB} -> 042/q3bsp-mt.tracy (0.4.2) {949855 KB}  67.16% size change
041/q3bsp-st.tracy (0.4.1) {301334 KB} -> 042/q3bsp-st.tracy (0.4.2) {240347 KB}  79.76% size change
041/selfprofile.tracy (0.4.1) {399648 KB} -> 042/selfprofile.tracy (0.4.2) {197713 KB}  49.47% size change
041/tbrowser.tracy (0.4.1) {13052 KB} -> 042/tbrowser.tracy (0.4.2) {9503 KB}  72.81% size change
041/test.tracy (0.4.1) {60309 KB} -> 042/test.tracy (0.4.2) {40700 KB}  67.49% size change
041/virtualfile_hc.tracy (0.4.1) {108967 KB} -> 042/virtualfile_hc.tracy (0.4.2) {72839 KB}  66.85% size change
041/zfile_hc.tracy (0.4.1) {58814 KB} -> 042/zfile_hc.tracy (0.4.2) {39608 KB}  67.35% size change
2018-12-30 23:42:17 +01:00
Bartosz Taudul 8c5670489c Freeing nullptr is valid. 2018-12-20 17:03:09 +01:00
Bartosz Taudul a220f38fbd Add support for matching source locations ignoring case. 2018-12-18 16:52:29 +01:00
Bartosz Taudul acddcbd9bf Add case-ignoring string matcher. 2018-12-18 16:52:05 +01:00
Bartosz Taudul 7376ec65b0 Store lock announce and terminate time in trace dump. 2018-12-16 21:09:37 +01:00
Bartosz Taudul 9360df89b1 Store announce and terminate time of locks. 2018-12-16 21:07:26 +01:00
Bartosz Taudul f42d52923a No-op processing of lock terminate events. 2018-12-16 20:46:33 +01:00
Bartosz Taudul 793e955480 Fix crash when loading a trace with unresolved strings.
Unresolved strings ("???") are not saved, but the internal string
pointers are saved. Resolving such string pointers caused a crash.
2018-10-21 16:38:20 +02:00
Bartosz Taudul 9211ce42da Non-on-demand client is only able to handle one connection. 2018-09-09 19:42:06 +02:00
Bartosz Taudul 984a711666 Send protocol version to verify handshake. 2018-09-09 19:28:53 +02:00
Bartosz Taudul 270072b09e Require shibboleth match at start of connection. 2018-09-09 18:26:53 +02:00
Bartosz Taudul 806c8de463 Only one outgoing server connection is supported. 2018-09-09 17:47:20 +02:00
Bartosz Taudul 9f4d6692dc Proper way to get full frame count. 2018-09-01 12:38:12 +02:00
Bartosz Taudul 8f1acf2571 Store explicit program name and capture time. 2018-08-29 01:02:29 +02:00
Bartosz Taudul bc6a553a3a Fetch thread names in memory events. 2018-08-28 01:48:19 +02:00
Bartosz Taudul 99b7a39c52 Save/load crash information. 2018-08-20 02:27:24 +02:00
Bartosz Taudul 3b526b074e Send crash report. 2018-08-20 02:23:55 +02:00
Bartosz Taudul 366ea35593 Allow crash event reporting.
When crash happens there's no longer anything to profile -- don't wait
for unfinished zones to finish before sending client terminate
confirmation.
2018-08-20 01:03:16 +02:00
Bartosz Taudul e0a4b9c56a Save/load host info. 2018-08-19 18:28:48 +02:00
Bartosz Taudul 203d9b4b85 Store host info. 2018-08-19 18:21:56 +02:00
Bartosz Taudul a15a287a6b Don't over-allocate vectors, when exact needed size is known.
This reduces memory usage when loading saved traces. Memory usage
reduction observed on a selected number of traces:

5625.76 MB -> 5330.29 MB
3292.94 MB -> 2978.66 MB
632.77 MB  -> 479.58 MB
681.32 MB  -> 506.27 MB
11.9 GB    -> 11.22 GB
854.21 MB  -> 806.17 MB
10.57 GB   -> 7175.31 MB
67.38 MB   -> 66.63 MB
2026.12 MB -> 1744.2 MB
86.55 MB   -> 85.57 MB
343.64 MB  -> 244.81 MB
201.93 MB  -> 162.25 MB
2018-08-09 19:41:15 +02:00
Bartosz Taudul a14a6fa8fb Don't shadow variables. 2018-08-09 19:41:15 +02:00
Bartosz Taudul a51da71fa4 Add lock, plot counts to worker. 2018-08-08 19:21:53 +02:00
Bartosz Taudul d36b0aff45 Fix progress of loading GPU zones. 2018-08-05 13:07:58 +02:00
Bartosz Taudul 9d051cf5ee Add support for discontinuous frames. 2018-08-05 02:15:54 +02:00
Bartosz Taudul 6b8a3b25ba Fix drawing of last frame. 2018-08-04 23:19:35 +02:00
Bartosz Taudul 9b4348b497 Handle frame name queries. 2018-08-04 21:10:45 +02:00
Bartosz Taudul 4424a7d7e8 Last time should never be zero. 2018-08-04 21:10:45 +02:00
Bartosz Taudul 23dfc2e3fc Multiple frame sets support. 2018-08-04 21:10:45 +02:00
Bartosz Taudul 0b4c2724ce Add strings to map directly in StringDiscovery. 2018-08-04 17:10:45 +02:00
Bartosz Taudul ada9f78678 Use StringDiscovery for plots. 2018-08-04 16:33:03 +02:00
Bartosz Taudul e174e2c12a Remove obsolete comment.
Nothing happens with the source data, as the strings are uniquely stored
in the StoreString() function.
2018-08-04 15:46:10 +02:00
Bartosz Taudul 6ef2d2d9a3 Track progress of loading plots. 2018-08-04 15:17:37 +02:00
Bartosz Taudul 18896044c4 Display explicit names of loaded things. 2018-07-29 16:56:46 +02:00
Bartosz Taudul 9f13475b52 Track trace version in worker. 2018-07-29 15:33:48 +02:00
Bartosz Taudul 13509c14f1 Save size of 'active' and 'frees' memory data structures. 2018-07-29 15:29:56 +02:00
Bartosz Taudul 00d07e39f7 Save threadExpand size to allow vector preallocation. 2018-07-29 15:19:44 +02:00
Bartosz Taudul bff6eb4c34 Save source location zones counts.
This allows preallocation of zones-in-source-location vectors.
2018-07-29 14:58:01 +02:00
Bartosz Taudul 12b90d1630 Move tracy version to a separate header. 2018-07-29 14:20:44 +02:00
Bartosz Taudul ccc5c37af5 Always count source location zones. 2018-07-29 14:16:13 +02:00
Bartosz Taudul 4456c8a454 Reserve space for string data. 2018-07-29 14:13:29 +02:00
Bartosz Taudul 648070e6a1 Include each loaded zone in sub progress. 2018-07-28 19:22:28 +02:00
Bartosz Taudul 4741dab833 Track sub progress. 2018-07-28 19:05:01 +02:00
Bartosz Taudul a14238c199 Add sub progress display. 2018-07-28 18:56:52 +02:00
Bartosz Taudul a46425f4e9 Adjust load stages. 2018-07-28 18:26:00 +02:00
Bartosz Taudul 0bf0ceed3d Track trace loading progress. 2018-07-28 17:59:17 +02:00
Bartosz Taudul d84d0b7754 Don't try to read empty timelines. 2018-07-22 21:15:28 +02:00
Bartosz Taudul 25116a8059 Don't try to compress invalid thread. 2018-07-22 21:13:42 +02:00
Bartosz Taudul 010cf66e43 Call Vector destructors. 2018-07-22 21:01:45 +02:00
Bartosz Taudul 29159069ab Properly initialize child index. 2018-07-22 20:14:55 +02:00