> 文档中心 > 6.cuBLAS开发指南中文版--cuBLAS中的SetStream()和SetWorkspace()

6.cuBLAS开发指南中文版--cuBLAS中的SetStream()和SetWorkspace()


cuBLAS中的SetStream()和SetWorkspace()

在这里插入图片描述

2.4.3. cublasGetVersion()

cublasStatus_tcublasGetVersion(cublasHandle_t handle, int *version)

函数返回 cuBLAS 库的版本号。

Return Value Meaning
CUBLAS_STATUS_SUCCESS 操作成功完成
CUBLAS_STATUS_NOT_INITIALIZED 为库版本号提供的存储未初始化(NULL)

2.4.4. cublasGetProperty()

cublasStatus_tcublasGetProperty(libraryPropertyType type, int *value)

此函数返回 value 指向的内存中所请求属性的值。 有关支持的类型,请参阅 libraryPropertyType。

Return Value Meaning
CUBLAS_STATUS_SUCCESS 操作成功完成
CUBLAS_STATUS_INVALID_VALUE 类型值无效, 如果类型值无效或value == NULL

2.4.5. cublasGetStatusName()

const char* cublasGetStatusName(cublasStatus_t status)

此函数返回给定状态的字符串表示形式。

Return Value Meaning
NULL-terminated string 状态的字符串表示

2.4.6. cublasGetStatusString()

const char* cublasGetStatusString(cublasStatus_t status)

此函数返回给定状态的描述字符串。

Return Value Meaning
NULL-terminated string 状态描述

2.4.7. cublasSetStream()

cublasStatus_tcublasSetStream(cublasHandle_t handle, cudaStream_t streamId)

此函数设置 cuBLAS 库流,该流将用于执行对 cuBLAS 库函数的所有后续调用。 如果未设置 cuBLAS 库流,则所有内核都使用 defaultNULL 流。 特别是,此例程可用于更改内核启动之间的流,然后将 cuBLAS 库流重置回 NULL。 此外,此函数无条件地将 cuBLAS 库工作区重置回默认工作区池(请参阅 cublasSetWorkspace())。

Return Value Meaning
CUBLAS_STATUS_SUCCESS 流设置成功
CUBLAS_STATUS_NOT_INITIALIZED 库未初始化

2.4.8. cublasSetWorkspace()

cublasStatus_tcublasSetWorkspace(cublasHandle_t handle, void *workspace, size_t workspaceSizeInBytes)

此函数将 cuBLAS 库工作区设置为用户拥有的设备缓冲区,该缓冲区将用于执行对 cuBLAS 库函数的所有后续调用(在当前设置的流上)。如果未设置 cuBLAS 库工作空间,所有内核将使用在 cuBLAS 上下文创建期间分配的默认工作空间池。特别是,此例程可用于更改内核启动之间的工作空间。工作区指针必须至少对齐 256 字节,否则会返回 CUBLAS_STATUS_INVALID_VALUE 错误。 cublasSetStream() 函数无条件地将 cuBLAS 库工作区重置回默认工作区池。太小的 workspaceSizeInBytes 可能会导致某些例程失败并返回 CUBLAS_STATUS_ALLOC_FAILED 错误或导致性能大幅下降。等于或大于 16KiB 的工作空间大小足以防止 CUBLAS_STATUS_ALLOC_FAILED 错误,而更大的工作空间可以为某些例程提供性能优势。用户提供的工作空间的推荐大小至少为 4MiB(以匹配 cuBLAS 的默认工作空间池)。

Return Value Meaning
CUBLAS_STATUS_SUCCESS 流设置成功
CUBLAS_STATUS_NOT_INITIALIZED 库未初始化
CUBLAS_STATUS_INVALID_VALUE 工作区指针未与至少 256 字节对齐