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

126 Commits

Author SHA1 Message Date
Bartosz Taudul d1429d086d No need to pack WelcomeMessage struct. 2018-04-04 18:53:41 +02:00
Bartosz Taudul 3e93c615f7 Fix UB, lose type safety. 2018-04-03 16:45:55 +02:00
Bartosz Taudul 3b03e849f0 Harden client code against unaligned memory access.
There shouldn't be any changes in generated code on modern
architectures, as the memcpy will be reduced to a store/load operation
identical to the one generated with plain struct member access.

GetTime( cpu ) needs special handling, as the MSVC intrinsic for rdtscp
can't store cpu identifier in a register. Using intermediate variable
would cause store to stack, read from stack, store to the destination
address. Since rdtscp is only available on x86, which handles unaligned
stores without any problems, we can have one place with direct struct
member access.
2018-03-31 14:15:04 +02:00
Bartosz Taudul 685432a85f Add unaligned read/write helpers. 2018-03-31 14:15:04 +02:00
Bartosz Taudul 56bd01dfd1 Don't copy thread name needlessly. 2018-03-31 01:38:57 +02:00
Bartosz Taudul 48e82ea135 Workaround pthreads thread name limit. 2018-03-31 01:22:21 +02:00
Bartosz Taudul 347c74cec3 Cosmetics. 2018-03-31 01:06:35 +02:00
Bartosz Taudul 813e265bc3 Initialize rpmalloc in SetThreadName().
There's no guarantee that rpmalloc will be initialized when the thread
calls SetThreadName, due to thread_local storage initialization rules.
2018-03-30 14:39:25 +02:00
Bartosz Taudul 7d6f5b875d Bump lz4 to 1.8.1. 2018-03-04 15:23:46 +01:00
Bartosz Szreder 9e3f18a62a Split data handling code from the view. 2018-02-21 16:41:37 +01:00
Bartosz Taudul c3a32f9c35 Send lock type in LockWait/LockSharedWait events.
This will be needed for proper construction of LockMap on the server, in
case the LockAnnounce message hasn't arrived yet.
2017-12-17 18:30:34 +01:00
Bartosz Taudul bcf2bf1c5c Shared lock events (still using old functionality). 2017-12-10 22:04:49 +01:00
Bartosz Taudul 782231b048 Shared lockable skeleton. 2017-12-10 21:49:45 +01:00
Bartosz Taudul 3567d7edd8 Reintroduce lock announce events. 2017-12-10 21:40:48 +01:00
Bartosz Taudul ab1f93194e No thread names on emscripten. 2017-11-29 11:11:16 +01:00
Bartosz Taudul 02b3e54943 Provide tracy color list in default client header. 2017-11-25 15:33:10 +01:00
Bartosz Taudul 2f09a2429e Add X11 color list. 2017-11-25 15:18:04 +01:00
Bartosz Taudul a515bf8878 Perform GPU to CPU resynchronization on each collect event. 2017-11-25 13:33:57 +01:00
Bartosz Taudul 0100266234 Use consistent names. 2017-11-25 13:14:16 +01:00
Bartosz Taudul c609c15f95 Acceleration param is always valid. 2017-11-24 01:23:54 +01:00
Bartosz Taudul 0e021bb798 Decrease LZ4 memory usage. 2017-11-23 02:28:33 +01:00
Bartosz Taudul c431747f06 Favor transfer of zones without predicted payload. 2017-11-22 02:28:12 +01:00
Bartosz Taudul 70ac7d3223 Add no inline specifier. 2017-11-19 17:15:09 +01:00
Bartosz Taudul a309e71fe1 Move force inline defines to a separate header. 2017-11-19 16:32:38 +01:00
Bartosz Taudul 18f7d8c261 Reorder StringTransfer to enable easier dispatch. 2017-11-19 02:42:04 +01:00
Bartosz Taudul c251690722 Query OpenGL time stamp accuracy. 2017-11-17 14:07:42 +01:00
Bartosz Taudul c43eb29ce0 Don't send source location pointer in query reply.
Since reply order is the same as the query order, the server already
knows what source location it receives. This observation allows placing
zone name into the source location struct.
2017-11-14 23:06:45 +01:00
Bartosz Taudul 5c872b2137 Simplify GPU context handling. 2017-11-14 00:48:26 +01:00
Bartosz Taudul 7ebaa46f75 GPU time transfer. 2017-11-11 22:08:47 +01:00
Bartosz Taudul 6fcdb924e8 CPU-side GPU event transfer. 2017-11-11 21:09:48 +01:00
Bartosz Taudul 3c00ce0958 GPU context registration. 2017-11-11 19:44:09 +01:00
Bartosz Taudul 81735aea2f Support for setting zone names in lua. 2017-11-11 17:56:41 +01:00
Bartosz Taudul 59ec40c045 Preemptive transfer of source location payload. 2017-11-11 15:59:30 +01:00
Bartosz Taudul 7f3b8f4647 Preemptive message text delivery. 2017-11-11 15:41:21 +01:00
Bartosz Taudul 76e11174dc Preemptive sending of custom strings. 2017-11-11 15:22:55 +01:00
Bartosz Taudul f6af913fd3 Remove ability to disable LZ4 compression. 2017-11-10 17:34:11 +01:00
Bartosz Taudul bc77aa8d26 Source location payload transfer. No storage yet. 2017-11-05 16:46:00 +01:00
Bartosz Taudul 0fb5f012ce Lua profiling framework. No source location transfer yet. 2017-11-05 15:06:28 +01:00
Bartosz Taudul 3dc7d04ab4 Properly handle connection reset on win32. 2017-11-04 17:19:28 +01:00
Bartosz Taudul a2f9dc75c7 Set SO_NOSIGPIPE on proper socket. 2017-11-03 11:20:39 +01:00
Bartosz Taudul f71af873c0 Proper function name. 2017-11-03 11:13:02 +01:00
Bartosz Taudul 7ecc6b54d4 Proper pthread_threadid_np call. 2017-11-03 11:12:17 +01:00
Bartosz Taudul c7cb89307f Use proper __APPLE__ macro. 2017-11-03 11:09:31 +01:00
Bartosz Taudul 1d9542ea25 Fix thread ids on osx, iphone. 2017-11-03 10:49:49 +01:00
Bartosz Taudul 7b8747ce21 Collect thread names on osx, iphone. 2017-11-02 13:02:04 +01:00
Bartosz Taudul 3051b8d27c Don't use rpmalloc directly. 2017-11-02 12:58:38 +01:00
Bartosz Taudul e31f8c2aed No sigpipe on think different. 2017-11-02 11:37:10 +01:00
Bartosz Taudul af39dd4921 Always define noop MSG_NOSIGNAL, if not available in headers. 2017-11-02 11:31:54 +01:00
Bartosz Taudul 391571a2da Fix android with tracy disabled. 2017-10-31 11:36:43 +01:00
Bartosz Taudul 3aaa718741 Enable thread name collection on cygwin.
It was working before, because there was _GNU_SOURCE define injection.
Without this macro defined pthread_[gs]etname_np() functions are not
exposed in the API.
2017-10-30 21:57:45 +01:00