Bartosz Taudul
5cf962e03d
Android has pthread_setname_np, but not getname...
2017-10-30 13:48:52 +01:00
Bartosz Taudul
d21040e3d8
pthread_{get,set}name_np is not standard.
2017-10-28 12:16:52 +02:00
Bartosz Taudul
10e3307512
Unique lz4 header guard.
2017-10-21 15:02:43 +02:00
Bartosz Taudul
ad338a7cfd
Fix message literals.
2017-10-21 12:39:26 +02:00
Bartosz Taudul
f822455832
Increase send buffer size.
2017-10-19 23:48:16 +02:00
Bartosz Taudul
51013dc0e6
Manual allocation of socket memory.
2017-10-18 19:50:28 +02:00
Bartosz Taudul
fc94378e0c
Move TracyAlloc.hpp to common. Use rpmalloc only if TRACY_ENABLE.
2017-10-18 19:50:28 +02:00
Bartosz Taudul
7c47edc64f
Terminate connection handshake.
2017-10-18 18:48:51 +02:00
Bartosz Taudul
1e3476cf36
Transfer profiler initialization time.
2017-10-17 01:10:38 +02:00
Bartosz Taudul
1788408ceb
Allow setting thread name using thread handle.
2017-10-16 21:17:58 +02:00
Bartosz Taudul
31fc2335dd
Silence some type mismatch warnings.
2017-10-16 21:17:58 +02:00
Bartosz Taudul
f156cd922b
OpenThread may fail.
2017-10-15 13:26:05 +02:00
Bartosz Taudul
5b9fcddfb3
String literal message transfer.
2017-10-15 13:06:49 +02:00
Bartosz Taudul
fa8030009f
Store messages.
2017-10-14 14:28:04 +02:00
Bartosz Taudul
8c7b60fbe6
Allow sending text messages.
2017-10-14 13:23:13 +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
Bartosz Taudul
fe0366c792
Receive plot data.
2017-10-13 03:36:59 +02:00
Bartosz Taudul
cb0011755d
Prevent type conversions.
2017-10-13 02:21:29 +02:00
Bartosz Taudul
f0484b50ca
Plot data transfer.
2017-10-13 02:07:03 +02:00
Bartosz Taudul
737671adbf
Remove lock announce message.
...
This removes problem with static initialization order of mutices vs
tracy.
Lock source location is now transferred in lock wait message.
2017-10-12 20:14:17 +02:00
Bartosz Taudul
cc8b357f09
Avoid excessive stack operations for cpu query.
2017-10-10 23:21:30 +02:00
Bartosz Taudul
75457c1465
Remove +x flag from files.
2017-10-10 21:56:15 +02:00
Bartosz Taudul
dcd89f894c
Add lock marking.
2017-10-06 16:32:32 +02:00
Bartosz Taudul
8c90eab044
Let's not worry about lock memory reuse.
2017-10-04 16:51:51 +02:00
Bartosz Taudul
0011573fa9
Send lock events.
2017-10-04 16:45:46 +02:00
Bartosz Taudul
069354b5dd
Add lock messages.
2017-10-04 16:16:27 +02:00
Bartosz Taudul
b2252de9c8
Send and display program execution date.
2017-10-03 23:26:41 +02:00
Bartosz Taudul
cf07383db8
Send program name in welcome message.
2017-10-03 23:17:58 +02:00
Bartosz Taudul
d1edd30ca6
Zone ids are unnecessary.
2017-10-03 16:41:32 +02:00
Bartosz Taudul
a1abf1f015
Record CPU id.
2017-10-01 19:17:08 +02:00
Bartosz Taudul
efda50acb1
Send timer resolution to server.
2017-09-29 18:32:07 +02:00
Bartosz Taudul
b9aa10913a
Rename internal enum to avoid #define conflicts.
2017-09-28 21:20:33 +02:00
Bartosz Taudul
8c1c395cec
Allow sending custom zone names.
2017-09-28 19:28:24 +02:00
Bartosz Taudul
362a37a705
Add no-payload queue items description.
2017-09-28 19:28:05 +02:00
Bartosz Taudul
d1bbb731fc
Zone text (custom string) transfer.
2017-09-27 02:18:17 +02:00
Bartosz Taudul
e90a86e06e
Store zone color in source location struct.
2017-09-26 18:54:48 +02:00
Bartosz Taudul
7424077d70
Store source location in a single object.
...
Source file, function name and line number are now stored in a const
static container object. This has the following benefits:
- Slightly lighter profiling workload (3 instructions less).
- Profiling queue event size is significantly reduced, by 12 bytes. This
has an effect on all queue event types.
- Source location grouping has now no cost, as it's performed at the
compilation stage. This allows simplification of server code.
The downside is that the full source location resolution is now
performed in two steps, as the server has to query both source location
container and strings contained within. This has almost no real impact
on profiler operation.
2017-09-26 02:39:08 +02:00
Bartosz Taudul
809d98162b
Do the same trick as concurrentqueue.h for GetCurrentThreadId().
2017-09-26 00:46:46 +02:00
Bartosz Taudul
1c4dcf7e52
Use consistent ifdefs.
2017-09-26 00:42:47 +02:00
Bartosz Taudul
11a790a18f
Offload TSC -> time conversion to server.
2017-09-26 00:13:24 +02:00
Bartosz Taudul
519cb8dff3
Allow adding custom colors to zones.
2017-09-25 22:46:14 +02:00
Bartosz Taudul
206305fbd2
Merge TracyThread.hpp to TracySystem.cpp.
...
Keeping threading functions inside a source file prevents poisoning by
including windows.h.
2017-09-25 21:13:59 +02:00
Bartosz Taudul
7683da5f74
Send initial configuration as a single message.
2017-09-24 16:10:28 +02:00
Bartosz Taudul
c0b1846a35
IPV6_V6ONLY needs to be disabled on cygwin too.
2017-09-23 20:20:41 +02:00
Bartosz Taudul
e1a63dbb53
Drop constant merging check.
...
While without constant merging the profiler operates sub-optimally, it's
not that essential to be enabled. And there are problems with it on some
platforms, for example cygwin.
2017-09-23 20:16:42 +02:00
Bartosz Taudul
6c1d014aa3
Fix implementation errors.
2017-09-22 21:48:21 +02:00
Bartosz Taudul
bd622c304a
Limit pthread thread name to 16 bytes.
...
This is a documented pthread restriction. Passing longer strings has no
effect (i.e. thread name is not set).
2017-09-22 21:45:35 +02:00
Bartosz Taudul
5919f5f5e8
No signals on sockets.
2017-09-22 20:02:15 +02:00
Bartosz Taudul
0f99705243
Add thread name report message.
2017-09-22 01:51:56 +02:00
Bartosz Taudul
7f337fae99
Add identification of server to client query.
2017-09-22 01:51:24 +02:00
Bartosz Taudul
a557a3fb30
Collect and transmit source thread information.
2017-09-22 01:11:53 +02:00
Bartosz Taudul
6885dc3fd3
Restore support for old SDK versions.
2017-09-22 00:37:28 +02:00
Bartosz Taudul
0c0b18615a
Use winapi function to set thread name.
...
Fairly recent Windows SDK is required, unfortunately.
2017-09-21 22:54:44 +02:00
Bartosz Taudul
4ce7f77cd9
Static initialization order is implementation specific.
2017-09-18 18:55:25 +02:00
Bartosz Taudul
bf6cbaefd1
Make sure there's enough space for lz4 stream buffer.
2017-09-17 13:24:50 +02:00
Bartosz Taudul
03ece0ac48
Send frame markers.
2017-09-16 00:30:27 +02:00
Bartosz Taudul
0a7d413e83
select() may update timeval.
2017-09-15 22:44:50 +02:00
Bartosz Taudul
f29669152e
Handle closed socket on win32.
2017-09-15 21:43:57 +02:00
Bartosz Taudul
f61f50385d
Add ability to send strings over network.
2017-09-14 19:24:35 +02:00
Bartosz Taudul
ef7dca9073
Init winsock at application init, not on first socket use.
2017-09-14 02:13:45 +02:00
Bartosz Taudul
b1fcf88cf4
Implement checking if there's data to read on the socket.
2017-09-14 01:14:40 +02:00
Bartosz Taudul
d999f35dfa
Exchange time and id in queue header and data structs.
2017-09-14 01:14:40 +02:00
Bartosz Taudul
10b88754d8
Allow direct access to data size table index.
2017-09-14 01:05:08 +02:00
Bartosz Taudul
037a4d7fac
Handle connection closed/no data in Socket::Read().
2017-09-13 23:27:17 +02:00
Bartosz Taudul
efd66bb609
Allow changing lz4 size type.
2017-09-13 23:27:17 +02:00
Bartosz Taudul
16dd561029
Move protocol specific sizes to common header.
2017-09-13 22:56:55 +02:00
Bartosz Taudul
a31ab6a256
Move TracyQueue.hpp to common.
2017-09-13 22:56:08 +02:00
Bartosz Taudul
3dd744019a
Socket read loop.
2017-09-13 02:08:30 +02:00
Bartosz Taudul
365f2cde23
Use select in Recv().
2017-09-13 01:53:47 +02:00
Bartosz Taudul
45646c4f45
Move TracySystem to a common directory.
2017-09-13 01:32:11 +02:00
Bartosz Taudul
5c2cb6098d
Move lz4 to tracy namespace.
2017-09-12 01:30:29 +02:00
Bartosz Taudul
16dbf7fc11
Add lz4 1.8.0.
2017-09-12 01:25:50 +02:00
Bartosz Taudul
dbd25e2653
Add sockets wrapper.
2017-09-11 22:51:11 +02:00