cublasStatus_t
cublasGetStream(cublasHandle_t handle, cudaStream_t *streamId)
此函数获取 cuBLAS 库流,该流用于执行对 cuBLAS 库函数的所有调用。 如果未设置 cuBLAS 库流,则所有内核都使用 default NULL 流。
Return Value | Meaning |
---|---|
CUBLAS_STATUS_SUCCESS | 流设置成功 |
CUBLAS_STATUS_NOT_INITIALIZED | 库未初始化 |
CUBLAS_STATUS_INVALID_VALUE | streamId == NULL |
cublasStatus_t
cublasGetPointerMode(cublasHandle_t handle, cublasPointerMode_t *mode)
该函数获取cuBLAS库使用的指针模式。 有关更多详细信息,请参阅有关 cublasPointerMode_t
类型的部分。
Return Value | Meaning |
---|---|
CUBLAS_STATUS_SUCCESS | 指针模式获取成功 |
CUBLAS_STATUS_NOT_INITIALIZED | 库未初始化 |
CUBLAS_STATUS_INVALID_VALUE | mode == NULL |
cublasStatus_t
cublasSetPointerMode(cublasHandle_t handle, cublasPointerMode_t mode)
此函数设置 cuBLAS 库使用的指针模式。 默认值是通过主机上的引用传递的值。 有关更多详细信息,请参阅有关 cublasPointerMode_t
类型的部分。
Return Value | Meaning |
---|---|
CUBLAS_STATUS_SUCCESS | 指针模式设置成功 |
CUBLAS_STATUS_NOT_INITIALIZED | 库未初始化 |
CUBLAS_STATUS_INVALID_VALUE | 模式不是 CUBLAS_POINTER_MODE_HOST 或 CUBLAS_POINTER_MODE_DEVICE |
cublasStatus_t
cublasSetVector(int n, int elemSize,
const void *x, int incx, void *y, int incy)
此函数将 n 个元素从主机内存空间中的向量 x 复制到 GPU 内存空间中的向量 y。 假定两个向量中的元素的大小为 elemSize
字节。 连续元素之间的存储间距由源向量 x 的 incx
和目标向量 y 的 incy
给出。
由于假定二维矩阵的列主要格式,如果向量是矩阵的一部分,则等于 1 的向量增量访问该矩阵的(部分)列。 类似地,使用等于矩阵前导维度的增量会导致访问该矩阵的(部分)行。
Return Value | Meaning |
---|---|
CUBLAS_STATUS_SUCCESS | 操作成功完成 |
CUBLAS_STATUS_INVALID_VALUE | 参数 incx, incy, elemSize<=0 |
CUBLAS_STATUS_MAPPING_ERROR | 访问 GPU 内存时出错 |
cublasStatus_t
cublasGetVector(int n, int elemSize,
const void *x, int incx, void *y, int incy)
此函数将 n 个元素从 GPU 内存空间中的向量 x 复制到主机内存空间中的向量 y。 假定两个向量中的元素的大小为 elemSize 字节。 连续元素之间的存储间距由源向量的 incx 和目标向量 y 的 incy 给出。
由于假定二维矩阵的列主要格式,如果向量是矩阵的一部分,则等于 1 的向量增量访问该矩阵的(部分)列。 类似地,使用等于矩阵前导维度的增量会导致访问该矩阵的(部分)行。
Return Value | Meaning |
---|---|
CUBLAS_STATUS_SUCCESS | 操作成功完成 |
CUBLAS_STATUS_INVALID_VALUE | 参数 incx, incy, elemSize<=0 |
CUBLAS_STATUS_MAPPING_ERROR | 访问 GPU 内存时出错 |