Bartosz Taudul
b2a8b53efa
Query source location of each assembly instruction.
2020-04-01 21:43:03 +02:00
Bartosz Taudul
9e8089ec1a
Improve handling of query queue.
2020-04-01 21:05:25 +02:00
Bartosz Taudul
57779a8ed9
Cosmetics.
2020-03-31 20:44:44 +02:00
Bartosz Taudul
d08f3a6ea0
Check for samples, not ghost zones.
2020-03-31 02:20:34 +02:00
Bartosz Taudul
eb48d24182
Store context switch data for threads with ghost zones.
2020-03-30 23:41:21 +02:00
Bartosz Taudul
11aedf2b27
Proper processing of symbol locations in live capture.
2020-03-30 17:10:59 +02:00
Bartosz Taudul
30771bf7cb
Gather failure data before terminating connection.
2020-03-29 23:01:57 +02:00
Bartosz Taudul
48e4d33bea
Support call stacks longer than 255 entries.
2020-03-28 18:04:33 +01:00
Bartosz Taudul
efbf13fcd4
Don't store inlined symbols locations.
2020-03-27 21:16:23 +01:00
Bartosz Taudul
992f4c8c2d
Implement search for symbol base from address.
2020-03-27 17:39:42 +01:00
Bartosz Taudul
4c381e13e9
Store list of symbol locations.
2020-03-27 17:34:51 +01:00
Bartosz Taudul
a466362938
Use proper function to send terminate query.
2020-03-27 02:02:36 +01:00
Bartosz Taudul
51bae7855d
Display number of in-flight queries.
2020-03-27 02:00:26 +01:00
Bartosz Taudul
7ac03be43b
Fix braino.
2020-03-25 22:50:13 +01:00
Bartosz Taudul
79db7f4457
Add symbol code accessor.
2020-03-25 22:15:22 +01:00
Bartosz Taudul
39da6c7c19
Store CPU architecture.
2020-03-25 21:48:24 +01:00
Bartosz Taudul
033433b883
Save/load symbol code.
2020-03-25 20:52:59 +01:00
Bartosz Taudul
ce449ac0e2
Notify server that parameter was handled.
2020-03-25 20:37:26 +01:00
Bartosz Taudul
ea507289c6
Add missing query space extensions.
2020-03-25 20:33:50 +01:00
Bartosz Taudul
f114ec3f80
Add code transfer from client to server.
2020-03-25 20:04:55 +01:00
Bartosz Taudul
3e0e120222
Add extra parameter to server queries.
2020-03-25 20:04:01 +01:00
Bartosz Taudul
bf52883331
Store symbol length in trace dumps.
2020-03-25 18:37:08 +01:00
Bartosz Taudul
c999a74d34
Symbol length transfer.
2020-03-25 18:32:36 +01:00
Bartosz Taudul
2417f63bf2
Build instruction pointers map when loading trace.
2020-03-25 01:56:13 +01:00
Bartosz Taudul
c603eaa1b6
Add symbol instruction pointers map accessor.
2020-03-25 01:08:29 +01:00
Bartosz Taudul
4068ab30e8
Build sampled instruction pointers map for symbols.
2020-03-24 23:54:30 +01:00
Bartosz Taudul
4ae13ff3dd
Build ghost frame data during live capture.
2020-03-21 18:26:42 +01:00
Bartosz Taudul
d2a53b79d7
Don't check if vector is empty, if we're sure it's not.
2020-03-21 17:59:09 +01:00
Bartosz Taudul
8a81d2210c
Non-consecutive stack samples are no longer present.
2020-03-21 15:28:34 +01:00
Bartosz Taudul
92e2597192
Fix ghost children times.
2020-03-19 00:35:18 +01:00
Bartosz Taudul
1f4dbd1b2e
Parallelize background jobs.
2020-03-19 00:35:18 +01:00
Bartosz Taudul
a48e804e96
Don't reconstruct mem alloc plot in no-statistics builds.
2020-03-19 00:35:18 +01:00
Bartosz Taudul
eb5f7a27e7
Match ghost zones by symbol address.
2020-03-16 23:05:07 +01:00
Bartosz Taudul
b89874850f
Pack frame identifiers in ghost zones.
2020-03-16 23:05:07 +01:00
Bartosz Taudul
452341059b
Build ghost zones tree.
2020-03-16 23:05:06 +01:00
Bartosz Taudul
377ed48416
Don't over-reserve map.
2020-03-16 23:05:06 +01:00
Bartosz Taudul
4631d884d6
Cleanup samples vector.
2020-03-10 21:46:24 +01:00
Bartosz Taudul
e7240cb77d
Custom lock name transfer.
2020-03-08 13:47:38 +01:00
Bartosz Taudul
50123298a7
Unify texture compression implementations.
2020-03-02 02:08:14 +01:00
Bartosz Taudul
aa0bf47ec3
Extract texture compression functionality.
2020-03-02 02:00:35 +01:00
Bartosz Taudul
c36ed4b8b8
Boring warning fixes.
2020-03-01 01:48:20 +01:00
Bartosz Taudul
e93b574c5d
Fill-in missing image name.
2020-03-01 01:27:21 +01:00
Bartosz Taudul
83316f1299
Fix pointer fixup.
2020-02-29 23:40:21 +01:00
Bartosz Taudul
d1ff99d6e3
Callstack frame map must not be touched by statistics.
2020-02-29 19:49:33 +01:00
Bartosz Taudul
8d5755521e
Fix no statistics build.
2020-02-29 19:31:51 +01:00
Bartosz Taudul
39361f71a1
Allow GetSymbolStats() to fail gracefully.
2020-02-29 18:59:01 +01:00
Bartosz Taudul
2589b45af0
Add accessors for new data.
2020-02-29 18:39:45 +01:00
Bartosz Taudul
bc14ca86f3
Count proper number of parent stacks.
2020-02-29 17:58:17 +01:00
Bartosz Taudul
c18584fdbc
Iterator may be invalidated.
2020-02-29 17:08:02 +01:00
Bartosz Taudul
4843a1d458
Collect parent call stacks for symbols.
2020-02-29 16:41:22 +01:00
Bartosz Taudul
6cc4de8d28
Construct parent call stacks for sampled stack traces.
2020-02-29 16:24:15 +01:00
Bartosz Taudul
bdc86f5338
Process postponed samples when new frame data is available.
2020-02-29 14:12:04 +01:00
Bartosz Taudul
0d112e20a5
Don't perform unnecessary hashmap search.
2020-02-29 13:58:11 +01:00
Bartosz Taudul
3412d2232f
Postpone processing incomplete sampled callstacks.
2020-02-29 13:45:50 +01:00
Bartosz Taudul
c5e8739435
Live update of sample statistics data.
2020-02-27 16:48:50 +01:00
Bartosz Taudul
8aa70211c0
Display inline functions.
2020-02-27 15:28:58 +01:00
Bartosz Taudul
7dd929a39e
Preserve symbol call location.
2020-02-27 15:07:29 +01:00
Bartosz Taudul
be5793987e
Don't send symbol name.
2020-02-27 12:49:48 +01:00
Bartosz Taudul
9d718eb1e8
Preserve inlined symbol names.
2020-02-27 12:39:05 +01:00
Bartosz Taudul
852e37c8dd
Calculate callstack sample data on trace load.
2020-02-27 01:22:36 +01:00
Bartosz Taudul
c99537c402
Provide default value for sourceLocationZonesReady.
2020-02-27 00:26:58 +01:00
Bartosz Taudul
4511a4de8c
Save/load symbol information.
2020-02-26 22:53:18 +01:00
Bartosz Taudul
847069a59d
Expose symbol source location data.
2020-02-26 22:46:02 +01:00
Bartosz Taudul
26cee8acf0
Perform symbol information queries.
2020-02-26 22:35:15 +01:00
Bartosz Taudul
eb7e8162ff
Handle module names on server side.
2020-02-26 00:55:43 +01:00
Bartosz Taudul
d6c0720f8a
Save/load sampling period.
2020-02-25 23:46:16 +01:00
Bartosz Taudul
af58649113
Store symbol addresses.
2020-02-25 23:42:59 +01:00
Bartosz Taudul
ca894be51d
Store sampling period on server.
2020-02-25 23:13:28 +01:00
Bartosz Taudul
7f5e23f2ac
Handle one more case of duplicate samples.
2020-02-23 15:57:36 +01:00
Bartosz Taudul
625d380f7a
Return value is not used.
2020-02-23 15:53:23 +01:00
Bartosz Taudul
759fd15c03
Don't load vector size twice.
2020-02-23 15:35:08 +01:00
Bartosz Taudul
358de714c8
Don't use "???" external thread name.
2020-02-23 11:39:51 +01:00
Bartosz Taudul
90277953c7
Replace duplicate samples.
2020-02-22 21:36:27 +01:00
Bartosz Taudul
4273939cf5
Local threads must have at least one zone captured.
2020-02-22 18:52:38 +01:00
Bartosz Taudul
597911e5a8
Save/load callstack samples.
2020-02-22 18:52:38 +01:00
Bartosz Taudul
437771ea85
Process callstack sample data.
2020-02-22 18:52:37 +01:00
Bartosz Taudul
ba0715b295
Replace remaining manual children checks with HasChildren().
2020-02-21 00:36:45 +01:00
Bartosz Taudul
ecc9369da2
Return zone extra during allocation.
2020-02-20 23:39:40 +01:00
Bartosz Taudul
4bf0af321f
Wrapper for allocation and retrieval of zone extra.
2020-02-20 23:37:55 +01:00
Bartosz Taudul
c5dbd749e7
Combine ContextSwitchCpu writes.
2020-02-20 02:09:09 +01:00
Bartosz Taudul
54573fb970
Combine ContextSwitchData writes.
2020-02-20 02:05:23 +01:00
Bartosz Taudul
d4f99e4459
Perform cheaper check first.
2020-02-19 22:43:37 +01:00
Bartosz Taudul
26584b00c3
Issue just one read call per zone.
...
Separate reads are issued only for first and last of children.
2020-02-13 18:11:54 +01:00
Bartosz Taudul
232379c72c
Optimize reading CPU data.
2020-02-13 01:14:12 +01:00
Bartosz Taudul
c03b8b72da
Optimize reading context switches.
2020-02-13 01:12:01 +01:00
Bartosz Taudul
3bb0f33dcc
Optimize reading plot data.
2020-02-13 01:04:40 +01:00
Bartosz Taudul
c0a2e9b3f7
Ditto during capture.
2020-02-13 00:54:54 +01:00
Bartosz Taudul
cc0f1f514c
Store memory event time and thread data together.
2020-02-13 00:52:29 +01:00
Bartosz Taudul
f9b19631c0
Read memory data in one go.
2020-02-13 00:37:54 +01:00
Bartosz Taudul
8e825d91e0
Keep refTime in a register.
2020-02-12 20:59:36 +01:00
Bartosz Taudul
39d24d0d4a
Set start and srcloc in one go.
2020-02-12 20:46:56 +01:00
Bartosz Taudul
354115ef9b
Reduce granularity of zone reading progress updates.
2020-02-12 20:03:14 +01:00
Bartosz Taudul
fa1747bdb2
Faster total zone count calculation during loading.
2020-02-12 19:15:46 +01:00
Bartosz Taudul
e88df069bd
Load zone child number along with zone data.
2020-02-12 02:14:21 +01:00
Bartosz Taudul
f562ff780c
Don't care about atomic increments of counters.
2020-02-12 00:53:03 +01:00
Bartosz Taudul
88f3e554da
Read all CPU zone variables at once.
2020-02-12 00:36:59 +01:00
Bartosz Taudul
5227bc3549
Read all GPU zone variables at once.
2020-02-12 00:34:09 +01:00
Bartosz Taudul
00ab76fa19
Discard scratch buffer tricks for better performance.
2020-02-12 00:29:45 +01:00
Bartosz Taudul
86644ecda0
Store intermediate results in registers, not in memory.
2020-02-11 02:35:50 +01:00
Bartosz Taudul
ad3aa73085
Change order of background tasks.
...
Now tasks are performed in the following order:
- Context switch based CPU usage graph.
- Memory allocations plot.
- Zone statistics.
This prioritizes appearance of the most notable things first.
2020-02-10 22:31:10 +01:00