perfetto-protos
Version:
Perfetto protos exposed via protobuf-es for browser and node
246 lines • 7.4 kB
TypeScript
import type { GenEnum, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
import type { Message } from "@bufbuild/protobuf";
/**
* Describes the file protos/perfetto/trace/gpu/vulkan_memory_event.proto.
*/
export declare const file_protos_perfetto_trace_gpu_vulkan_memory_event: GenFile;
/**
* All the information that cannot be sent within a VulkanMemoryEvent message,
* are sent as annotations to the main memory event. One example is the
* properties of the object that consumes the allocated memory, for example, a
* buffer or an image.
* key_iid and string_iid are both interned strings. Original string value is
* stored in vulkan_memory_keys from
* protos/perfetto/trace/interned_data/interned_data.proto.
*
* @generated from message perfetto.protos.VulkanMemoryEventAnnotation
*/
export type VulkanMemoryEventAnnotation = Message<"perfetto.protos.VulkanMemoryEventAnnotation"> & {
/**
* @generated from field: optional uint64 key_iid = 1;
*/
keyIid: bigint;
/**
* @generated from oneof perfetto.protos.VulkanMemoryEventAnnotation.value
*/
value: {
/**
* @generated from field: int64 int_value = 2;
*/
value: bigint;
case: "intValue";
} | {
/**
* @generated from field: double double_value = 3;
*/
value: number;
case: "doubleValue";
} | {
/**
* @generated from field: uint64 string_iid = 4;
*/
value: bigint;
case: "stringIid";
} | {
case: undefined;
value?: undefined;
};
};
/**
* Describes the message perfetto.protos.VulkanMemoryEventAnnotation.
* Use `create(VulkanMemoryEventAnnotationSchema)` to create a new message.
*/
export declare const VulkanMemoryEventAnnotationSchema: GenMessage<VulkanMemoryEventAnnotation>;
/**
* Each VulkanMemoryEvent encompasses information regarding one single function
* call that results in reserving, binding or freeing host or GPU memory. There
* is a special message type, ANNOTATIONS, which is used to communicate
* information that are not directly related to a memory event, nonetheless are
* essential to understand the memory usage. An example is the size and memory
* types of the memory heaps.
*
* Next reserved id: 10 (up to 15).
* Next id: 21.
*
* @generated from message perfetto.protos.VulkanMemoryEvent
*/
export type VulkanMemoryEvent = Message<"perfetto.protos.VulkanMemoryEvent"> & {
/**
* @generated from field: optional perfetto.protos.VulkanMemoryEvent.Source source = 1;
*/
source: VulkanMemoryEvent_Source;
/**
* @generated from field: optional perfetto.protos.VulkanMemoryEvent.Operation operation = 2;
*/
operation: VulkanMemoryEvent_Operation;
/**
* @generated from field: optional int64 timestamp = 3;
*/
timestamp: bigint;
/**
* @generated from field: optional uint32 pid = 4;
*/
pid: number;
/**
* @generated from field: optional fixed64 memory_address = 5;
*/
memoryAddress: bigint;
/**
* @generated from field: optional uint64 memory_size = 6;
*/
memorySize: bigint;
/**
* Interned string. Original string value is stored in function_names from
* protos/perfetto/trace/interned_data/interned_data.proto.
*
* @generated from field: optional uint64 caller_iid = 7;
*/
callerIid: bigint;
/**
* @generated from field: optional perfetto.protos.VulkanMemoryEvent.AllocationScope allocation_scope = 8;
*/
allocationScope: VulkanMemoryEvent_AllocationScope;
/**
* Extra related information, e.g., create configs, etc.
*
* @generated from field: repeated perfetto.protos.VulkanMemoryEventAnnotation annotations = 9;
*/
annotations: VulkanMemoryEventAnnotation[];
/**
* Field IDs used for device memory (low sampling rate)
*
* @generated from field: optional fixed64 device = 16;
*/
device: bigint;
/**
* @generated from field: optional fixed64 device_memory = 17;
*/
deviceMemory: bigint;
/**
* @generated from field: optional uint32 memory_type = 18;
*/
memoryType: number;
/**
* @generated from field: optional uint32 heap = 19;
*/
heap: number;
/**
* @generated from field: optional fixed64 object_handle = 20;
*/
objectHandle: bigint;
};
/**
* Describes the message perfetto.protos.VulkanMemoryEvent.
* Use `create(VulkanMemoryEventSchema)` to create a new message.
*/
export declare const VulkanMemoryEventSchema: GenMessage<VulkanMemoryEvent>;
/**
* @generated from enum perfetto.protos.VulkanMemoryEvent.Source
*/
export declare enum VulkanMemoryEvent_Source {
/**
* @generated from enum value: SOURCE_UNSPECIFIED = 0;
*/
UNSPECIFIED = 0,
/**
* @generated from enum value: SOURCE_DRIVER = 1;
*/
DRIVER = 1,
/**
* @generated from enum value: SOURCE_DEVICE = 2;
*/
DEVICE = 2,
/**
* @generated from enum value: SOURCE_DEVICE_MEMORY = 3;
*/
DEVICE_MEMORY = 3,
/**
* @generated from enum value: SOURCE_BUFFER = 4;
*/
BUFFER = 4,
/**
* @generated from enum value: SOURCE_IMAGE = 5;
*/
IMAGE = 5
}
/**
* Describes the enum perfetto.protos.VulkanMemoryEvent.Source.
*/
export declare const VulkanMemoryEvent_SourceSchema: GenEnum<VulkanMemoryEvent_Source>;
/**
* @generated from enum perfetto.protos.VulkanMemoryEvent.Operation
*/
export declare enum VulkanMemoryEvent_Operation {
/**
* @generated from enum value: OP_UNSPECIFIED = 0;
*/
OP_UNSPECIFIED = 0,
/**
* alloc, create
*
* @generated from enum value: OP_CREATE = 1;
*/
OP_CREATE = 1,
/**
* free, destroy(non-bound)
*
* @generated from enum value: OP_DESTROY = 2;
*/
OP_DESTROY = 2,
/**
* bind buffer and image
*
* @generated from enum value: OP_BIND = 3;
*/
OP_BIND = 3,
/**
* destroy (bound)
*
* @generated from enum value: OP_DESTROY_BOUND = 4;
*/
OP_DESTROY_BOUND = 4,
/**
* only annotations
*
* @generated from enum value: OP_ANNOTATIONS = 5;
*/
OP_ANNOTATIONS = 5
}
/**
* Describes the enum perfetto.protos.VulkanMemoryEvent.Operation.
*/
export declare const VulkanMemoryEvent_OperationSchema: GenEnum<VulkanMemoryEvent_Operation>;
/**
* @generated from enum perfetto.protos.VulkanMemoryEvent.AllocationScope
*/
export declare enum VulkanMemoryEvent_AllocationScope {
/**
* @generated from enum value: SCOPE_UNSPECIFIED = 0;
*/
SCOPE_UNSPECIFIED = 0,
/**
* @generated from enum value: SCOPE_COMMAND = 1;
*/
SCOPE_COMMAND = 1,
/**
* @generated from enum value: SCOPE_OBJECT = 2;
*/
SCOPE_OBJECT = 2,
/**
* @generated from enum value: SCOPE_CACHE = 3;
*/
SCOPE_CACHE = 3,
/**
* @generated from enum value: SCOPE_DEVICE = 4;
*/
SCOPE_DEVICE = 4,
/**
* @generated from enum value: SCOPE_INSTANCE = 5;
*/
SCOPE_INSTANCE = 5
}
/**
* Describes the enum perfetto.protos.VulkanMemoryEvent.AllocationScope.
*/
export declare const VulkanMemoryEvent_AllocationScopeSchema: GenEnum<VulkanMemoryEvent_AllocationScope>;
//# sourceMappingURL=vulkan_memory_event_pb.d.ts.map