1/* 2 * Copyright (C) 2019 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17syntax = "proto2"; 18 19package perfetto.protos; 20 21// Message for recording the Vulkan call. 22message VulkanApiEvent { 23 oneof event { 24 VkDebugUtilsObjectName vk_debug_utils_object_name = 1; 25 VkQueueSubmit vk_queue_submit = 2; 26 } 27 28 // For recording vkSetDebugUtilsObjectNameEXT and 29 // vkDebugMarkerSetObjectNameEXT 30 message VkDebugUtilsObjectName { 31 optional uint32 pid = 1; 32 optional uint64 vk_device = 2; 33 // VkObjectType. Value must match 34 // https://www.khronos.org/registry/vulkan/specs/1.1-extensions/man/html/VkObjectType.html. 35 optional int32 object_type = 3; 36 optional uint64 object = 4; 37 optional string object_name = 5; 38 } 39 40 // For recording vkQueueSubmit call. 41 message VkQueueSubmit { 42 optional uint64 duration_ns = 1; 43 optional uint32 pid = 2; 44 optional uint32 tid = 3; 45 optional uint64 vk_queue = 4; 46 repeated uint64 vk_command_buffers = 5; 47 // Submission ID. An identifier unique to each vkQueueSubmit call. This 48 // submission_id must match GpuRenderStageEvent.submission_id if the 49 // GpuRenderStageEvent is created due to this vkQueueSubmit. 50 optional uint32 submission_id = 6; 51 } 52} 53