Bartosz Taudul
fad7e72fd4
Harden against uninitialized rpmalloc.
...
Initialize rpmalloc either by explicitly calling InitRPMallocThread(),
or by forcing initialization of thread local variables block.
2020-05-19 13:51:11 +02:00
Bartosz Taudul
35a2baf5ef
GPU zones may also be inactive.
2020-01-25 17:44:46 +01:00
Bartosz Taudul
ba61a9ed84
Transfer time deltas, not absolute times.
...
This change significantly reduces network bandwidth requirements.
Implemented for:
- CPU zones,
- GPU zones,
- locks,
- plots,
- memory events.
2019-10-24 00:06:41 +02:00
Bartosz Taudul
0f68e1e981
Send thread id in GPU zone end message.
...
We don't care about OpenGL zone thread ids, so the identifier is zeroed.
2019-09-23 16:06:14 +02:00
Bartosz Taudul
daf64c703a
Serialize Vulkan GPU profiling messages.
...
Since Vulkan can be multi-threaded, the guarantee of GPU time data
arriving after CPU time data can't be held with asynchronous messages.
Use serial queue instead.
2019-09-23 15:38:16 +02:00
Bartosz Taudul
a6a3f45810
Fill in thread id during dequeue, not during enqueue.
2019-07-30 01:15:14 +02:00
Bartosz Taudul
89928fde7b
Queue must be always able to alloc.
2019-07-29 22:13:16 +02:00
Bartosz Taudul
55c9f41060
Vulkan queue doesn't need to be stored.
2019-07-25 18:54:32 +02:00
Bartosz Taudul
0aa0b4ac8a
Try lower query counts in out-of-memory situations.
2019-06-26 16:43:56 +02:00
Bartosz Taudul
659631fc06
Make vulkan query count variable.
2019-06-26 16:42:51 +02:00
Bartosz Taudul
06a41708a7
Move TLS accesses close together.
2019-06-24 19:38:44 +02:00
Bartosz Taudul
3f914834b7
Hide rest of statics.
2019-02-19 19:33:37 +01:00
Bartosz Taudul
2421e05c27
Prevent direct access to s_profiler.
2019-02-19 18:38:08 +01:00
Bartosz Taudul
d865d1cc87
Disallow direct access to s_token.
2019-02-19 18:27:00 +01:00
Bartosz Taudul
c9c4d2845a
Provide empty {Gpu,Vk}CtxScope classes if tracy is disabled.
...
This may be needed if some wrapping is done, abstracting the OpenGL and
Vulkan tracing.
2019-02-18 14:45:09 +01:00
Bartosz Taudul
a95e8a5424
Hide internals behind TracyVkCtx typedef.
2019-01-14 12:40:54 +01:00
Bartosz Taudul
070888f80d
Make it possible to have multiple vulkan contexts.
...
API change!
2019-01-10 17:11:17 +01:00
Bartosz Taudul
ae288c6a6a
Move vulkan macros at the end of TracyVulkan.hpp.
2019-01-10 16:41:04 +01:00
Bartosz Taudul
537cee911c
Allow forcing call stack capture.
2018-12-13 14:43:37 +01:00
Bartosz Taudul
128577d7bf
Remove parenthesis from TracyVkDestroy macro.
2018-08-28 16:45:05 +02:00
Bartosz Taudul
31c2ddb8ac
Rename client's SourceLocation to SourceLocationData.
2018-07-28 00:34:04 +02:00
Bartosz Taudul
dbdc530f1c
Named GPU zones.
2018-07-26 20:15:39 +02:00
Bartosz Taudul
3737e122cf
Of course, this can't work without stupid fuckery.
2018-07-26 19:59:55 +02:00
Bartosz Taudul
1111980f1f
Make source location names unique.
2018-07-26 19:22:19 +02:00
Arvid Gerstmann
6b87aecdce
Wrap concurrentqueue in tracy namespace
2018-07-13 20:01:27 +02:00
Bartosz Taudul
0cbeea97a2
Support on-demand Vulkan tracing.
2018-07-11 17:03:00 +02:00
Bartosz Taudul
1f7246f6b9
Defer OpenGL/Vulkan context announce.
2018-07-11 15:00:30 +02:00
Bartosz Taudul
e5b133073c
Disable all tracing if TRACY_ON_DEMAND is defined.
2018-07-10 20:49:51 +02:00
Bartosz Taudul
62267399bc
Send query ids of GPU times.
2018-06-22 16:19:53 +02:00
Bartosz Taudul
69c461cda3
Results MUST be available here.
2018-06-22 16:09:35 +02:00
Bartosz Taudul
51c5f47ae2
Transfer query ids of GPU events.
2018-06-22 15:57:54 +02:00
Bartosz Taudul
55ddb64352
GPU context counter is now 8 bit.
2018-06-22 15:10:23 +02:00
Bartosz Taudul
b213e5f415
Vulkan zone callstack collection.
2018-06-22 01:47:08 +02:00
Bartosz Taudul
a1424c4112
Vulkan tracing is not thread safe.
2018-06-22 01:41:28 +02:00
Bartosz Taudul
7a23f677dd
Vulkan and OpenGL must share idx pool.
2018-06-18 01:10:43 +02:00
Bartosz Taudul
53e3eee9ee
Delay query until results are available.
...
This will query for the new values with a bit of lag, but it ignores
issues with broken drivers...
2018-06-17 20:56:46 +02:00
Bartosz Taudul
4767dbad5b
Workaround Nvidia bugs.
...
This solution is still bad, as it really does wait for the query
results, which stalls the CPU.
2018-06-17 20:48:02 +02:00
Bartosz Taudul
684ba455a2
Send GPU zone thread handle.
2018-06-17 18:55:38 +02:00
Bartosz Taudul
6102f17e29
Better way to write zero value.
2018-06-17 18:55:38 +02:00
Bartosz Taudul
cb77e8dc1c
There's no notion of main thread in vulkan.
2018-06-17 18:29:12 +02:00
Bartosz Taudul
8495e5b094
Send timestamp period in GPU context announcement.
2018-06-17 18:21:15 +02:00
Bartosz Taudul
9c11e0fc5b
Vulkan tracing.
2018-06-17 18:14:37 +02:00