跳至内容

GpaGetSampleResult

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

语法

GpaStatus GpaGetSampleResult(
GpaSessionId session_id,
GpaUInt32 sample_id,
size_t sample_result_size_in_bytes,
void* counter_sample_results);

描述

获取给定采样的结果数据。此函数会阻塞直到结果可用。使用 GpaIsSessionComplete 检查结果是否可用。对于离散计数器采样,数据将是一组连续的 64 位值,每个值对应于该采样收集的计数器。在返回结果后,您可以迭代缓冲区以读取各个计数器值。在所有命令列表(DirectX 12)或命令缓冲区(Vulkan)执行完毕后,结果才可用。来自辅助命令列表的采样结果将不可用,除非已调用 GpaCopySecondarySamples 将采样复制回主命令列表。

参数

名称描述
session_id先前创建的会话的唯一标识符。
sample_id先前创建的采样的唯一标识符。
sample_result_size_in_bytes指定采样结果的大小 - 此值应已通过 GpaGetSampleResultSize 查询。
counter_sample_results将用于复制采样计数器数据的地址。

返回值

返回值描述
kGpaStatusOk成功检索了采样结果。
kGpaStatusErrorGpaNotInitializedGPA 未初始化。请在所有其他入口点之前调用 GpaInitialize。
kGpaStatusErrorNullPointer提供的 session_id 参数为 NULL。

提供的 pCounterSampleResults 参数为 NULL。 | | kGpaStatusErrorSessionNotFound | 提供的 session_id 参数未被识别为先前创建的会话标识符。 | | kGpaStatusErrorSampleNotFound | 在指定的会话中未找到指定的采样。 | | kGpaStatusErrorSessionNotEnded | 会话尚未结束。在检索结果之前,必须已使用 GpaEndSession 结束会话。 | | kGpaStatusErrorReadingSampleRequest | 无法读取采样结果。 | | kGpaStatusErrorSampleInSecondaryCommandList | 尝试从辅助命令列表读取结果。来自辅助命令列表的采样必须使用 GpaCopySecondarySamples 复制到主命令列表。 | | kGpaStatusErrorIndexOutOfRange | 内部操作索引特定计数器失败。 | | kGpaStatusErrorException | 发生异常。 |

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