mesa/src/util/perf
Russell Greene a871eabced wsi/wayland/perfetto: supply presentation clock to perfetto
Perfetto is allowed to choose it's own default clock, and before this we just assumed the presentation times reported by the compositor are the same as perfetto's internal clock, which is not always the case. I got a nasty trace where all the wayland presents were in the wrong location. This fixes that by asking the compositor which clock it uses, then passing that along to perfetto.

A workaround for my compositor was setting use_monotonic_clock=true in the perfetto config, as my compositor (and I suspect most others) use the monotonic clock for presentation timestamps. However, asking the compositor is definitely the most correct solution.

I added a clock param to `MESA_TRACE_TIMESTAMP_{BEGIN,END}`, as it's only use that I could see was in wsi_common_wayland, and in general it seems good to be careful about which clock tracing timestamps come from.

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31779>
2024-10-22 21:16:40 +00:00
..
.clang-format clang-format: Disable formatting by default 2023-08-13 16:48:49 +02:00
cpu_trace.h wsi/wayland/perfetto: supply presentation clock to perfetto 2024-10-22 21:16:40 +00:00
gpuvis_trace_utils.h util/perf: Add gpuvis integration. 2023-08-19 23:09:45 +02:00
u_gpuvis.c util/perf: Add gpuvis integration. 2023-08-19 23:09:45 +02:00
u_gpuvis.h util/perf: Add gpuvis integration. 2023-08-19 23:09:45 +02:00
u_perfetto.cc wsi/wayland/perfetto: supply presentation clock to perfetto 2024-10-22 21:16:40 +00:00
u_perfetto.h wsi/wayland/perfetto: supply presentation clock to perfetto 2024-10-22 21:16:40 +00:00
u_perfetto_renderpass.h tu/perfetto: Use tu_CmdBeginDebugUtilsLabelEXT as a stage event in perfetto. 2023-04-16 15:50:49 +00:00
u_trace.c u_trace: add csv output 2024-08-03 16:03:07 +03:00
u_trace.h u_trace: add csv output 2024-08-03 16:03:07 +03:00
u_trace.py u_trace: Fix trace_payload_as_extra_func desync between drivers 2024-10-03 20:25:48 +00:00
u_trace_priv.h u_trace: add support for indirect data 2024-08-03 16:03:00 +03:00