跳至内容

GpaGetFuncTable

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

语法

GpaStatus GpaGetFuncTable(
void* gpa_func_table);

描述

获取 GPA API 函数表。gpa_func_table 是一个输入输出参数,其类型为 GpaFunctionTable*。在调用此函数之前,应由调用者设置 major_versionminor_version。在 C++ 模式下编译时,这些将自动设置。在 C 模式下编译时,需要分别手动将其设置为 GPA_FUNCTION_TABLE_MAJOR_VERSION_NUMBER 和 GPA_FUNCTION_TABLE_MINOR_VERSION_NUMBER。执行此函数后,major_versionminor_version 成员将设置为加载的 GPUPerfAPI 库的主版本和次版本。如果版本不兼容,函数将返回错误。

函数表次版本计算为函数表结构的大小。这允许在未来的版本中向表末尾添加其他函数,同时保持向后兼容性。如果调用者指定的次版本号低于 GPUPerfAPI 库的次版本号,GpaGetFuncTable 将仅为输入结构中与次版本号大小相对应的函数指针赋值。调用者可以通过在成功执行后检查 minor_version 的值来检测此情况。如果值大于原始值,调用者可以推断加载的 GPUPerfAPI 库版本具有一些旧版本库中不存在的附加 API 函数。调用者可以通过使用较新的 GPUPerfAPI 头文件重新编译来访问新函数。

如果 GPUPerfAPI 的新版本中进行了任何不向后兼容的更改,API 表的主版本号将递增。不向后兼容的更改的例子包括删除公共函数或更改公共函数的签名。如果调用者指定的主版本号与 GPUPerfAPI 库的主版本号不同,此函数将 major_version 成员设置为加载的 GPUPerfAPI 库的主版本号并返回错误。

参数

名称描述
gpa_func_table指向 GPA 函数表结构的指针。

返回值

返回值描述
kGpaStatusOk成功检索到函数表。
kGpaStatusErrorNullPointer提供的 gpa_func_table 参数为 NULL。
kGpaStatusErrorLibLoadMajorVersionMismatch调用者指定的主版本与加载的 GPUPerfAPI 库的主版本不同。
kGpaStatusErrorLibLoadMinorVersionMismatch调用者指定的次版本大于加载的 GPUPerfAPI 库的主版本。
kGpaStatusErrorException发生异常。
© . This site is unofficial and not affiliated with AMD.