跳至内容

GpaBeginCommandList

Copyright (c) 2018-2024 Advanced Micro Devices, Inc. 保留所有权利。

语法

GpaStatus GpaBeginCommandList(
GpaSessionId session_id,
GpaUInt32 pass_index,
void* command_list,
GpaCommandListType command_list_type,
GpaCommandListId* command_list_id)

描述

开始采样命令列表。在调用 GpaBeginCommandList 之前,您无法在命令列表或命令缓冲区上创建样本。必须在启动命令列表之前创建并启动会话。对于多通道计数器收集,您必须为每个命令列表的每个通道调用此函数一次。

参数

名称描述
session_id先前创建的会话的唯一标识符。
pass_index通道的零基索引。
command_list用于开始采样的 API 特定的命令列表。对于 DirectX 12,这应该是一个 ID3D12GraphicsCommandList。对于 Vulkan,这应该是一个 vkCommandBuffer。对于所有其他 API,这应该为 kGpaCommandListNone。
command_list_typecommand_list 参数的类型。对于 DirectX 12 和 Vulkan,这应该是 kGpaCommandListPrimary 或 kGpaCommandListSecondary。辅助命令列表是 DirectX 12 中的 bundle 或 Vulkan 中的辅助命令缓冲区。对于所有其他 API,这应该为 kGpaCommandListNone。
command_list_id在此函数成功执行后,此参数将被设置为 GPA 生成的唯一命令列表标识符。此值随后可以传递给任何接受 GpaCommandListId 作为输入参数的 GPA 函数。

返回值

返回值描述
kGpaStatusOk命令列表已成功启动。
kGpaStatusErrorGpaNotInitializedGPA 未初始化。请在所有其他入口点之前调用 GpaInitialize。
kGpaStatusErrorNullPointer提供的 session_id 参数为 NULL。

提供的 command_list 参数为 NULL,并且 command_list_type 不为 kGpaCommandListNone。

提供的 command_list_id 参数为 NULL。 | | kGpaStatusErrorSessionNotFound | 提供的 sessionId 参数未被识别为先前创建的会话标识符。 | | kGpaStatusErrorInvalidParameter | command_list_type 参数的值无效。

提供的 command_list 参数不为 NULL,并且 command_list_type 参数为 kGpaCommandListNone。 | | kGpaStatusErrorSessionNotStarted | 提供的 GPA Session 对象尚未启动。请在 GpaBeginCommandList 之前调用 GpaBeginSession。 | | kGpaStatusErrorCommandListAlreadyStarted | 提供的命令列表已启动。 | | kGpaStatusErrorFailed | 命令列表未能启动。 | | kGpaStatusErrorException | 发生异常。 |

© . This site is unofficial and not affiliated with AMD.