Bartosz Taudul
3228e20c2e
Add hardware samples accessors.
2021-05-19 23:05:50 +02:00
Bartosz Taudul
373a2b66c6
Collect hardware sample data.
2021-05-19 23:05:33 +02:00
Bartosz Taudul
64ed3d057d
Add no-op dispatch of HW samples.
2021-05-19 21:09:55 +02:00
Bartosz Taudul
8219a0e4ca
Fix shift.
2021-05-15 18:39:01 +02:00
Bartosz Taudul
c91c7a7fd5
Use zstd dict for packing/unpacking frame images.
...
This only affects run-time memory usage and needs an offline calculation of
the dictionary. Results vary depending on similarity of image blocks.
agora 34.96 MB -> 28.21 MB
agora2 40.75 MB -> 34.14 MB
android-vk 36.21 MB -> 18.44 MB
astar3 44.72 MB -> 43.38 MB
clipper1 134.36 MB -> 52.16 MB
fi 50.82 MB -> 40.79 MB
fi-big 537.74 MB -> 469.54 MB
test 23.26 MB -> 1.87 MB
2021-05-15 18:06:44 +02:00
Bartosz Taudul
d555256546
Don't use separate texture compression context.
...
Previously it was needed, as saving could be made at the same time the UI was
active. Currently saving blocks UI access to data structures, as it possibly
may need to sort unsorted vectors.
2021-05-15 18:04:14 +02:00
Bartosz Taudul
a53f5702b1
Calculate frame images dictionary.
2021-05-15 18:03:50 +02:00
Bartosz Taudul
3d75bf653a
Add interface for frame images dict building.
2021-05-15 15:50:20 +02:00
Bartosz Taudul
7f1f929662
Decode PID and TID when generating imported thread names.
2021-05-15 13:08:51 +02:00
Bartosz Taudul
8ea02a4794
Cosmetics.
2021-05-15 13:03:42 +02:00
Bartosz Taudul
4f76fb2cda
Store location in SourceLocation during chrome import.
2021-05-11 01:37:59 +02:00
David Farrell
dcf33b51cf
Updated comment to say that both OpenGL _and_ Direct3D11
...
don't need per-zone thread id.
2021-05-01 16:31:06 -07:00
Bartosz Taudul
0e6a25fdd8
Directly compare time, with data piggybacked in low bits.
2021-05-01 15:04:56 +02:00
David Farrell
be963f184c
Change ev.ptr nullptr early-out to happen only when there is not a previous allocation for address 0. Custom memory pools (like custom allocators for Vulkan memory pools) can allocate at address 0, so the previous code would cause the Tracy server to alloc(0), free(0) (but early out), then on the next alloc(0) it would have a MemAllocTwiceFailure (because it skipped the free).
2021-04-21 11:53:55 -07:00
Bartosz Taudul
e189f596ac
Add no-statistics guards.
2021-04-18 22:59:10 +02:00
Bartosz Taudul
d234f4dbe4
Generate child sample data during capture.
2021-04-18 22:44:37 +02:00
Bartosz Taudul
a5afa2cb4e
Use correct address for child sample information.
2021-04-18 20:43:23 +02:00
Bartosz Taudul
34b80ac52f
Add child samples count getters.
2021-04-18 15:03:42 +02:00
Bartosz Taudul
df462f109d
Reconstruct child sample data.
2021-04-18 15:00:19 +02:00
Bartosz Taudul
4dc6222ba1
Add child samples data structure.
2021-04-18 14:42:35 +02:00
Bartosz Taudul
07996c16cf
Fix gcc 8.3 with LTO.
...
In member function ‘UpdateSampleStatisticsImpl’:
warning: argument 1 value ‘18446744073709551598’ exceeds maximum object size 9223372036854775807 [-Walloc-size-larger-than=]
auto cfdata = (CallstackFrame*)alloca( ( fxsz-1 ) * sizeof( CallstackFrame ) );
^
2021-04-09 01:15:18 +02:00
Bartosz Taudul
8dd92f32af
Handle memory double allocation failure.
2021-03-09 22:19:42 +01:00
Bartosz Taudul
6d5710901c
Fix ZoneColor channel order.
2021-03-09 02:14:57 +01:00
Bartosz Taudul
18e893752b
Use SortedVector for source location zones.
2021-02-07 19:35:53 +01:00
Bartosz Taudul
c220177828
Do postponed work only when needed.
2021-02-07 18:29:29 +01:00
Bartosz Taudul
9bb1d13afa
Revert to non-shared mutex for data lock.
...
The main change here is that the UI will be unresponsive when a trace is being
saved when there's no capture being performed. Note that the UI was always
frozen during saving if the capture was live, due to how starvation is
prevented by the locks.
2021-02-07 18:11:36 +01:00
Bartosz Taudul
417d526581
Use SortedVector for plot data.
2021-02-07 15:52:08 +01:00
Bartosz Taudul
3400331de1
Check source file validity against executable time.
2021-02-06 22:59:07 +01:00
Bartosz Taudul
ad2062fb40
Last-resort source code transfer from client to server.
2021-02-04 00:45:00 +01:00
Bartosz Taudul
f97223e394
Rename ParamPingback to more generic AckServerQueryNoop.
2021-02-04 00:03:58 +01:00
Bartosz Taudul
c4a6f3f980
Save/load GPU context names.
2021-01-31 19:15:23 +01:00
Bartosz Taudul
7bb6114270
Process GPU context name messages.
2021-01-31 19:15:23 +01:00
Bartosz Taudul
8d39f91c6e
Save/load executable image mtime.
2021-01-31 17:51:16 +01:00
Bartosz Taudul
6c728f6d23
Cosmetics.
2021-01-31 17:24:41 +01:00
Bartosz Taudul
c08d591bf3
Use proper capstone include path.
2021-01-26 20:35:57 +01:00
Bartosz Taudul
81c91a87fc
Search in cache before issuing syscall.
2021-01-26 01:47:00 +01:00
Bartosz Taudul
ccf441176b
Merge pull request #168 from jkriegshauser/improve-import
...
Improve chrome import
2021-01-22 14:57:52 +01:00
joshuakr
c96f01956d
PR feedback: write the name into the tracy file
2021-01-21 18:33:59 -08:00
joshuakr
2920f97911
Imported Chrome traces bring over thread names
2021-01-21 17:26:00 -08:00
joshuakr
25a95d99c0
Imported chrome traces show the file name in the title bar
2021-01-21 17:25:53 -08:00
Bartosz Taudul
239a17deb9
Fix typo.
2021-01-22 02:17:12 +01:00
Bartosz Taudul
a4764141c6
Support serial callstacks when processing GPU zones.
2021-01-15 22:11:34 +01:00
Bartosz Taudul
d4c0d4fbb7
Rename CallstackMemory to CallstackSerial.
2021-01-15 20:49:39 +01:00
Bartosz Taudul
c66b2cb536
Process allocated source location GPU zones.
2021-01-15 20:33:45 +01:00
Bartosz Taudul
d827832d4d
Don't operate on short_ptr.
2021-01-15 20:25:07 +01:00
Bartosz Taudul
44020487d2
Keep zone begin implementations together.
2021-01-15 20:20:34 +01:00
Ben Vanik
7dfdad2e02
Adding ZoneColor to set a dynamic color override to an existing zone.
2020-11-27 20:12:24 +01:00
Bartosz Taudul
d0acee2a9a
Add missing default no-op to switch.
2020-11-23 22:58:40 +01:00
Bartosz Taudul
34e208368d
Add missing include.
2020-11-23 22:58:12 +01:00
Bartosz Taudul
de69fc9850
Check if plot data values are finite numbers.
2020-11-23 22:48:55 +01:00
Bartosz Taudul
a2f0f7754d
Fix integer types.
2020-10-02 19:30:01 +02:00
Bartosz Taudul
b6724bec3a
Ports are uint16_t.
2020-10-02 18:51:54 +02:00
Bartosz Taudul
a5e0336936
Add missing server query space updates to failure handling.
2020-09-30 16:48:59 +02:00
Bartosz Taudul
9d392d2c90
Process call stack frames during failure dispatch.
2020-09-30 15:57:14 +02:00
Bartosz Taudul
641649143c
Make symbol queries optional.
2020-09-30 15:49:29 +02:00
Bartosz Taudul
cecc3783a8
Handle single and second string data in failure dispatch.
2020-09-30 15:46:00 +02:00
Bartosz Taudul
3135191e90
Wait for failure callstack to be received.
2020-09-29 18:40:04 +02:00
Bartosz Taudul
d8e653ecb4
Set memory failure callstack.
2020-09-29 18:40:04 +02:00
Bartosz Taudul
98aaca9597
Default-initialize failure data struct.
2020-09-29 18:40:04 +02:00
Bartosz Taudul
44aef7660d
Don't keep two variables to track one thing.
2020-09-29 17:04:41 +02:00
Bartosz Taudul
d5b6befda2
Handle new callstack ordering on server.
2020-09-29 16:59:28 +02:00
Bartosz Taudul
ae14e7a879
Expose custom memory pools in the UI.
2020-09-25 17:51:05 +02:00
Bartosz Taudul
d238c97452
Save/load custom memory types.
2020-09-25 16:39:00 +02:00
Bartosz Taudul
ba4315c286
Store memory name in MemData struct.
2020-09-25 16:36:03 +02:00
Bartosz Taudul
5a6c8b4696
Process named memory allocations.
2020-09-24 01:31:24 +02:00
Bartosz Taudul
d1ea97b474
Prepare for handling multiple memory areas.
2020-09-24 01:31:23 +02:00
Bartosz Taudul
46f0853f1b
Process memory name payload transfer.
2020-09-24 01:31:23 +02:00
Bartosz Taudul
a9ce4f6454
Cosmetics.
2020-09-24 01:31:23 +02:00
Bartosz Taudul
75ae14cd04
Use in-place merge to sort symbol data.
2020-09-07 01:47:11 +02:00
Bartosz Taudul
0f13a02062
Properly terminate symbol inline location data.
...
Previously there was no end value on which iteration would stop in case of
the last-in-the-process-space symbol, which resulted in out-of-bounds read.
Workaround has been added for versions < 0.7.2, but no version bump has been
performed (still at 0.7.1). Having two terminator values at the end of the
list is harmless.
2020-08-20 18:50:20 +02:00
Bartosz Taudul
7cf3b0b004
Workaround issues with sample order.
2020-08-18 21:53:52 +02:00
Bartosz Taudul
5239b706c3
Allow disabling code transfer.
2020-08-16 01:31:54 +02:00
Bartosz Taudul
be0e3b9cc4
Silence memcpy/memset warnings.
2020-08-15 02:14:29 +02:00
Bartosz Taudul
b6feb99e98
Show which symbols are available.
2020-08-13 16:24:09 +02:00
Bartosz Taudul
7a4ecc5417
Store instruction pointers in per-symbol sample data.
2020-08-10 14:52:51 +02:00
Bartosz Taudul
06ac6f4f24
Build per-symbol samples list during live capture.
2020-08-09 21:04:03 +02:00
Bartosz Taudul
3be0a3f628
Vector is not empty here.
2020-08-09 20:46:44 +02:00
Bartosz Taudul
b418c98e63
Add symbol samples accessor.
2020-08-07 19:14:21 +02:00
Bartosz Taudul
aa8b60a824
Calculate per-symbol sample time list.
...
This is for loaded traces. Real time capture will be implemented later.
2020-08-07 19:05:27 +02:00
Bartosz Taudul
87e7cba289
Disable samples limit range until background job is done.
2020-08-07 14:54:00 +02:00
Bartosz Taudul
7e6a41e647
No need for lean alloc srcloc zone begin messages.
2020-07-26 14:35:04 +02:00
Bartosz Taudul
062bb3044f
No need for lean callstack sample message.
2020-07-26 14:28:13 +02:00
Bartosz Taudul
4252cac654
No need for lean callstack alloc message.
2020-07-26 14:25:32 +02:00
Bartosz Taudul
18713de70c
No need for lean frame image message.
2020-07-26 14:23:04 +02:00
Bartosz Taudul
b76726c597
No need for lean callstack, callstack memory messages.
2020-07-26 14:23:03 +02:00
Bartosz Taudul
14a15bf152
Order of lock events is now always well-defined.
2020-07-26 13:54:40 +02:00
Bartosz Taudul
03f46d7228
Custom string data is no longer needed.
2020-07-26 01:47:49 +02:00
Bartosz Taudul
c0b73c248f
Add second single string transfer.
2020-07-26 01:47:49 +02:00
Bartosz Taudul
a7d2ab4d4f
Send single string for lock name.
2020-07-26 01:47:49 +02:00
Bartosz Taudul
e91950f006
Send single string for messages.
2020-07-26 01:35:52 +02:00
Bartosz Taudul
5553761c02
Send single string for zone text and name.
2020-07-26 01:35:52 +02:00
Bartosz Taudul
309a151610
Symbol length no longer has to be packed.
2020-07-26 01:35:52 +02:00
Bartosz Taudul
88685440b6
Send single string for callstack frame.
2020-07-26 01:35:52 +02:00
Bartosz Taudul
61e3acde06
Send single string for callstack frame size.
2020-07-26 01:35:52 +02:00
Bartosz Taudul
e3dfa96055
Extract single string idx retrieval.
2020-07-26 01:35:52 +02:00
Bartosz Taudul
06ca4e2d16
Send single string for symbol information.
2020-07-26 01:35:52 +02:00
Bartosz Taudul
14b180cd16
Send single string for code information.
2020-07-26 01:35:51 +02:00
Bartosz Taudul
81d5a8db5e
Implement transport of single string data.
...
In most cases only one string is sent per message and no pointer
tracking is needed.
This is only plumbing work, no changes to messages have been made yet.
2020-07-26 01:35:51 +02:00
Bartosz Taudul
0704ab8f79
Clear frame image back references when removing fi data.
2020-07-17 22:16:47 +02:00
Bartosz Taudul
e48b5611c5
Save GPU context calibration state.
2020-07-07 21:25:35 +02:00