vulkan: Add RMV file exporter

Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17331>
This commit is contained in:
Friedrich Vock
2022-07-16 23:42:56 +02:00
committed by Marge Bot
parent defed48104
commit 845792db73
4 changed files with 1722 additions and 0 deletions

View File

@@ -56,6 +56,7 @@ vk_dispatch_trampolines_gen = files('vk_dispatch_trampolines_gen.py')
files_vulkan_util = files(
'rmv/vk_rmv_common.c',
'rmv/vk_rmv_common.h',
'rmv/vk_rmv_exporter.c',
'rmv/vk_rmv_tokens.h',
'vk_alloc.c',
'vk_alloc.h',

View File

@@ -95,6 +95,9 @@ vk_rmv_handle_present_locked(struct vk_device *device)
int32_t new_frame_index = p_atomic_add_return(&trace_data->cur_frame_idx, 1);
frame_trigger =
(new_frame_index % trace_data->trace_frame_idx == 0) && trace_data->trace_frame_idx != -1;
if (file_trigger || frame_trigger)
vk_dump_rmv_capture(trace_data);
}
void

View File

@@ -145,6 +145,8 @@ void vk_memory_trace_finish(struct vk_device *device);
/* The memory trace mutex should be locked when entering this function. */
void vk_rmv_handle_present_locked(struct vk_device *device);
int vk_dump_rmv_capture(struct vk_memory_trace_data *data);
void vk_rmv_emit_token(struct vk_memory_trace_data *data, enum vk_rmv_token_type type,
void *token_data);
void vk_rmv_log_buffer_create(struct vk_device *device, bool is_internal, VkBuffer _buffer);

File diff suppressed because it is too large Load Diff