Commit Graph

7721 Commits

Author SHA1 Message Date
Ivan Molodetskikh
852a1a5f14 Add TracyIsStarted
When using TRACY_MANUAL_LIFETIME, calling most Tracy functions
before starting the profiler results in an assertion. Notably, even
TracyIsConnected is affected. There is, however, no function to check if
the profiler had already started. This commit adds such a function.
2023-10-25 14:56:29 +04:00
Bartosz Taudul
18054b4f34
Merge pull request #647 from YaLTeR/meson-missing-incl
meson: Add missing TracySysPower include
2023-10-24 11:16:58 +02:00
Ivan Molodetskikh
c2fb6f62fb meson: Add missing TracySysPower include 2023-10-24 08:27:12 +04:00
Bartosz Taudul
4c8944b174
Merge pull request #644 from YaLTeR/gpu-time-sync
Add GpuTimeSync event
2023-10-23 19:18:38 +02:00
Bartosz Taudul
721a39a9ea
Describe drawbacks of GPU resynchronization 2023-10-23 15:56:21 +02:00
Ivan Molodetskikh
f99d1a2b61 Mention ___tracy_emit_gpu_time_sync in the manual 2023-10-23 08:02:52 +04:00
Ivan Molodetskikh
41fc293043 Add GpuTimeSync event
Allows to resynchronise GPU and CPU timestamps during profiling.
2023-10-22 10:16:41 +04:00
Bartosz Taudul
3601576b3f
Add some more ogryzek device identifiers. 2023-10-20 01:32:05 +02:00
Bartosz Taudul
5994629ccd
Document AMD GPUs power saving issues. 2023-10-19 23:27:19 +02:00
Bartosz Taudul
6819c28bcb
Merge pull request #642 from YaLTeR/c-api-gpu-fixes
Defer GPU context creation from the C API
2023-10-19 14:22:38 +02:00
Ivan Molodetskikh
52caae3a51 Defer GPU contexts from the C API
Same as how the C++ API does it. Otherwise with on demand mode the
profiler never receives the GPU context info.
2023-10-19 15:33:06 +04:00
Bartosz Taudul
7f5cfdfa10
Merge pull request #641 from YaLTeR/meson-improvements
Meson improvements
2023-10-19 12:47:42 +02:00
Ivan Molodetskikh
ed486bf3c7 CI: Add basic meson build test 2023-10-19 14:26:17 +04:00
Ivan Molodetskikh
7a2ce93998 meson: Generate pkgconfig file
Lets multiple projects use the same Tracy library.
2023-10-19 13:31:39 +04:00
Ivan Molodetskikh
170a07c46b meson: Fix header install dir 2023-10-19 13:28:29 +04:00
Ivan Molodetskikh
e93cf6d08a meson: Propagate defines to dependents
This way they don't have to set them manually.
2023-10-19 13:26:32 +04:00
Ivan Molodetskikh
6796c6fd91 meson: Remove tracy_dep_dynamic
Seems unused.
2023-10-19 13:26:32 +04:00
Ivan Molodetskikh
8ae29c0329 meson: Remove duplicate include 2023-10-19 13:26:32 +04:00
Bartosz Taudul
aae4d25f7b
Merge pull request #639 from martty/patch-1
Correct load method for Vk instance extension symbol
2023-10-18 13:08:41 +02:00
Marcell Kiss
69ba216245 correct load method Vk instance extension symbol 2023-10-17 23:23:13 +01:00
Bartosz Taudul
5c15866771
Merge pull request #638 from neheb/patch-1
fix compilation for Ubuntu MinGW
2023-10-17 11:31:43 +02:00
Rosen Penev
470b0934a6
fix compilation for Ubuntu MinGW
version had to be set to 7 minimum.
2023-10-16 19:41:20 -07:00
Bartosz Taudul
37aff70dfa
Release 0.10.0. 2023-10-16 20:59:38 +02:00
Bartosz Taudul
93537dff33
Merge pull request #636 from ids1024/xdg-decoration
wayland: Fix use of xdg-decoration protocol
2023-10-09 23:56:42 +02:00
Bartosz Taudul
757362f782
Merge pull request #603 from slomp/slomp/d3d11-refactor
refactoring of the D3D11 back-end
2023-10-09 23:56:20 +02:00
Ian Douglas Scott
8fe6c39bb5 wayland: Fix use of xdg-decoration protocol
`zxdg_toplevel_decoration_v1` isn't a global, so the code handling it as
one wasn't doing anything. Instead,
`zxdg_decoration_manager_v1_get_toplevel_decoration` returns it.

This fixes the behavior for compositors that support server-side
decoration, but do not default to it until explicitly requested by the
client.
2023-10-09 14:32:42 -07:00
Bartosz Taudul
009cc92320
Update ImGui to 1.89.9 + docking. 2023-10-09 23:30:57 +02:00
Bartosz Taudul
a762cc0013
Update nfd to 1.1.0. 2023-10-09 23:14:55 +02:00
Bartosz Taudul
03fdb3402d
Update xxhash to 0.8.2. 2023-10-09 23:11:30 +02:00
Bartosz Taudul
e2fec4f27f
Update getopt_port to 6ad8cc105. 2023-10-09 22:38:04 +02:00
Bartosz Taudul
52721a6bf0
Add Zen4 EPYC CpuId. 2023-10-09 22:34:44 +02:00
Bartosz Taudul
0080eaac42
Merge pull request #635 from slomp/slomp/apple-delayed-init-fix
eliminate "already defined" warning when passing TRACY_DELAYED_INIT to the compiler on Apple clients
2023-10-09 22:26:04 +02:00
Marcos Slomp
ded5b81fa4 eliminate "already defined" warning when passing TRACY_DELAYED_INIT to the compiler on Apple clients 2023-10-09 13:24:54 -07:00
Bartosz Taudul
434a27b85d
Fix linking on win32. 2023-10-08 20:36:16 +02:00
Bartosz Taudul
e77ce12093
Update NEWS. 2023-10-07 01:42:35 +02:00
Bartosz Taudul
2c18097bf9
Symbol history walking. 2023-10-07 01:28:10 +02:00
Bartosz Taudul
2a6a082c93
Maintain a history of viewed symbols. 2023-10-07 01:12:16 +02:00
Bartosz Taudul
5e31910510
Merge pull request #633 from YaLTeR/fix-meson-nopsleds
Fix meson nopsleds option
2023-10-06 11:07:14 +02:00
Ivan Molodetskikh
91671ab21a Fix meson nopsleds option
It was missing from meson_options.txt breaking the build, and had an
outdated name.
2023-10-06 10:56:35 +04:00
Bartosz Taudul
da1bc2b60e
Merge pull request #597 from Keno/kf/noplrdtsc
Use patchable rdtsc sequence to avoid slowdowns under rr
2023-09-24 21:55:11 +02:00
Bartosz Taudul
855fd299ea
Merge pull request #600 from slomp/slomp/d3d12-refactor
Refactoring of the D3D12 back-end
2023-09-24 21:51:58 +02:00
Bartosz Taudul
60a3a85069
Merge pull request #624 from slomp/slomp/udp-broadcast-fix
Fixes around UDP broadcast
2023-09-21 20:29:32 +02:00
Marcos Slomp
83b52d9a20
fix socket reuse logic in UdpListen::Listen() 2023-09-20 21:47:44 -07:00
Keno Fischer
5417227e83 Use patchable rdtsc sequence to avoid slowdowns under rr
We (Julia) ship both support for using tracy to trace julia applications,
as well as using `rr` (https://github.com/rr-debugger/rr) for record-replay debugging.
After our most recent rebuild of tracy, users have been reporting signfificant performance
slowdowns when `rr` recording a session that happens to also load the tracy library
(even if tracing is not enabled). Upon further examination, the recompile happened
to trigger a protective heuristic that disabled rr's patching of tracy's use of
`rdtsc` because an earlier part of the same function happened to look like a
conditional branch into the patch region. See https://github.com/rr-debugger/rr/pull/3580
for details. To avoid this issue occurring again in future rebuilds of tracy,
adjust tracy's `rdtsc` sequence to be `nopl; rdtsc`, which (as of of the
linked PR) is a sequence that is guaranteed to bypass this heuristic
and not incur the additional overhead when run under rr.

This functionality is kept behind a compile-time flag `TRACY_PATCHABLE_NOPSLEDS`
in order to avoid polluting the instruction cache unnecessarily.
2023-09-20 20:21:40 -04:00
Marcos Slomp
996987b966 scoping 2023-09-11 12:59:48 -07:00
Marcos Slomp
7b2acd2c6d improved error reporting 2023-09-11 12:53:42 -07:00
Marcos Slomp
42b088d085 Collect pending timestamps upon context destruction 2023-09-11 12:46:03 -07:00
Marcos Slomp
2e3ae95882 reworking TracyD3D12 macros 2023-09-11 12:28:07 -07:00
Marcos Slomp
f9d36060df reworking clock calibration 2023-09-11 12:08:15 -07:00
Marcos Slomp
6454b0bd65 removing windows/com header bloat 2023-09-11 12:07:42 -07:00