Bartosz Taudul
8f280b147b
Getting program name on android.
2017-10-30 14:59:05 +01:00
Bartosz Taudul
97880a89ae
Clobber ecx register.
2017-10-29 16:20:07 +01:00
Bartosz Taudul
a220043114
Add no-cpu GetTime() variant.
...
In this version the address of cpu output variable is const, so there's
no stack address calculation involved.
2017-10-29 16:12:16 +01:00
Bartosz Taudul
68f5a17bca
Use 32-bit registers for rdtscp output.
2017-10-29 13:15:43 +01:00
Bartosz Taudul
03289175ab
Lock counter also must be initialized early.
2017-10-24 22:02:49 +02:00
Bartosz Taudul
ad338a7cfd
Fix message literals.
2017-10-21 12:39:26 +02:00
Bartosz Taudul
f1da7c1c85
Force TLS block creation on cygwin before malloc.
2017-10-20 18:28:25 +02:00
Bartosz Taudul
1e645665fe
Initialize rpmalloc in profiler worker thread.
...
Thread local variables on gcc are apparently not initialized on thread
startup, but on first access to thread local variables block. Previously
it was working, because s_token was accessed before any rpmalloc
allocation could be performed. Now the first rpmalloc allocation is the
Socket class, and rpmalloc is not initialized there, as there was no
thread local access yet.
2017-10-18 23:30:54 +02:00
Bartosz Taudul
9c4316879c
Add TRACY_NO_EXIT macro.
2017-10-18 20:01:12 +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
c5ea9c744c
Do not disable lz4 in debug builds.
2017-10-18 19:50:28 +02:00
Bartosz Taudul
6a2cbe2842
Rename DISABLE_LZ4 to TRACY_DISABLE_LZ4.
2017-10-18 19:50:22 +02:00
Bartosz Taudul
7c47edc64f
Terminate connection handshake.
2017-10-18 18:48:51 +02:00
Bartosz Taudul
d942b7edf1
Don't exit until all data is sent.
2017-10-17 22:02:47 +02:00
Bartosz Taudul
652dccd163
Also no need to construct more than one welcome message.
2017-10-17 21:55:40 +02:00
Bartosz Taudul
5421164f33
No need to get process name more than once.
2017-10-17 21:53:09 +02:00
Bartosz Taudul
1e3476cf36
Transfer profiler initialization time.
2017-10-17 01:10:38 +02:00
Bartosz Taudul
51f5ae4796
More precise profiler init end time measurement.
2017-10-17 01:07:54 +02:00
Bartosz Taudul
0ed789825a
Measure time of initialization start.
2017-10-17 01:07:34 +02:00
Bartosz Taudul
866081bf29
Initialize tracy before anything else.
2017-10-17 00:36:15 +02:00
Bartosz Taudul
9d01b508ed
One more type cast.
2017-10-17 00:25:32 +02:00
Bartosz Taudul
8a6e4d2971
Change TRACY_DISABLE to TRACY_ENABLE.
...
By default tracy is now disabled.
2017-10-16 21:34:39 +02:00
Bartosz Taudul
518568a513
Move client/Tracy.hpp -> Tracy.hpp.
2017-10-16 21:28:38 +02:00
Bartosz Taudul
e04bd05606
Always use ShouldExit() to determine if worker should exit.
2017-10-16 21:21:42 +02:00
Bartosz Taudul
9f28205548
Use custom threading wrapper instead of std::thread.
...
std::thread may perform memory allocation when a thread is created (it
does so on MSVC). Tracy heap is managed by its own allocator and this
changes prevents accessing application heap.
2017-10-16 21:17:58 +02:00
Bartosz Taudul
2f8d3ff5eb
Add minimal thread class implementation.
2017-10-16 21:17:58 +02:00
Bartosz Taudul
dafec48319
PAGE_SIZE is already defined in limits.h.
2017-10-16 21:17:58 +02:00
Bartosz Taudul
65c000718b
Do not redefine assert macro.
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
3554e4c4ac
Prevent clash of likely/unlikely with possible macros.
2017-10-16 21:17:58 +02:00
Bartosz Taudul
5b9fcddfb3
String literal message transfer.
2017-10-15 13:06:49 +02:00
Bartosz Taudul
95439a726a
Fix typo.
2017-10-15 13:06:20 +02:00
Bartosz Taudul
9a60c3fb6e
Remove unused variable.
2017-10-14 20:03:55 +02:00
Bartosz Taudul
e496f24427
Use standard c++ features.
2017-10-14 18:48:35 +02:00
Bartosz Taudul
bded83e458
Don't include headers in a namespace.
2017-10-14 18:02:01 +02:00
Bartosz Taudul
dc25c46dee
No need to init/destroy queue item memory.
2017-10-14 17:39:43 +02:00
Bartosz Taudul
472b5a521f
Preallocation size is in number of elements, not bytes.
2017-10-14 17:33:05 +02:00
Bartosz Taudul
40bc4c8015
Missing include.
2017-10-14 17:21:14 +02:00
Bartosz Taudul
19011b3798
Use rpmalloc in concurrentqueue.
2017-10-14 17:19:27 +02:00
Bartosz Taudul
c497966c7f
Use rpmalloc to allocate tracy client memory.
2017-10-14 17:15:18 +02:00
Bartosz Taudul
e8968efea7
Initialize rpmalloc.
2017-10-14 17:00:25 +02:00
Bartosz Taudul
b75317be7d
Wrap malloc/free.
2017-10-14 16:52:05 +02:00
Bartosz Taudul
b117c56257
Wrap rpmalloc in tracy namespace.
2017-10-14 16:50:08 +02:00
Bartosz Taudul
709d86ad0c
Add rpmalloc.
...
https://github.com/rampantpixels/rpmalloc/tree/master/rpmalloc
2592b551b26d0ac9d1c92db3c1ae6c0ce5cd447a
2017-10-14 16:43:26 +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
57afeb4588
Queue MUST allocate memory.
2017-10-13 20:33:53 +02:00
Bartosz Taudul
7f36bb6846
Mark unlikely code path.
...
It also changes MSVC behavior from generating two jumps to just one.
2017-10-13 20:24:11 +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