测试 cusolver 是否必须设置 stream

cusolverDnCreate之后,如果不调用 cusolverSetStream,那么,cusolver的这个handle是否可以被正常使用来调用cusolver的Math API 呢?

1,不设置时会Get到 NULL stream

测试源码

#include <cuda_runtime.h>
#include <cublas_v2.h>
#include <cusolverDn.h>

int main()
{
        cusolverDnHandle_t handle;
        cublasHandle_t cublasHandle;
        cudaStream_t stream;

        cusolverDnCreate(&handle);
        cublasCreate(&cublasHandle);
        //cudaStreamCreate(&stream);

        //LL::cusolverDnSetStream(handle, stream);
        //LL::cublasSetStream(cublasHandle, stream);
        cudaStream_t blas_stream;
        cublasGetStream(cublasHandle, &blas_stream);
        printf("blas_stream = %p\n", blas_stream);
        cudaStream_t solver_stream;
        cusolverDnGetStream(handle, &solver_stream);
        printf("solver_stream = %p\n", solver_stream);

        return 0;
}

编译命令:

$ g++ hello.cpp -I /usr/local/cuda/include -L /usr/local/cuda/lib64 -lcudart -lcublas -l cusolver

运行效果:

结论:

Get到的stream都是NULL指针,即,cublas和cusolver都会使用默认stream;

2,cusolver在不设置stream时能正常工作

测试源代码:

https://github.com/NVIDIA/cuda-samples/blob/v11.4/Samples/cuSolverDn_LinearSolver/cuSolverDn_LinearSolver.cpp

将上述示例中的SetStream的两行注释掉,依然可以正常工作:

没有注释掉Set效果图:

没注释掉Set的运行结果:

注释掉了Set效果图:

注释掉Set的效果图:

不注释时,stream指针非0,

注释掉时,stream指针为0;

但计算结果和运行时间结果完全一致;

相关推荐

  1. Redis中测试Stream的例子

    2023-12-11 21:52:01       23 阅读
  2. <span style='color:red;'>Stream</span>

    Stream

    2023-12-11 21:52:01      31 阅读
  3. 如何测试Nginx防盗链是否生效?

    2023-12-11 21:52:01       57 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-11 21:52:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-11 21:52:01       101 阅读
  3. 在Django里面运行非项目文件

    2023-12-11 21:52:01       82 阅读
  4. Python语言-面向对象

    2023-12-11 21:52:01       91 阅读

热门阅读

  1. qt有哪些常用控件

    2023-12-11 21:52:01       54 阅读
  2. 传染病传播速度

    2023-12-11 21:52:01       53 阅读
  3. C语言-链表_基础

    2023-12-11 21:52:01       41 阅读
  4. redis中scan命令详解

    2023-12-11 21:52:01       51 阅读
  5. Redisson的基础使用(2)

    2023-12-11 21:52:01       57 阅读
  6. 【GO】记一次排查 docker virtual size 过大问题

    2023-12-11 21:52:01       57 阅读
  7. 12.11

    12.11

    2023-12-11 21:52:01      61 阅读
  8. bz2 --- 对 bzip2 压缩算法的支持

    2023-12-11 21:52:01       55 阅读
  9. go进阶语法10问

    2023-12-11 21:52:01       59 阅读
  10. 含电热联合系统的微电网运行优化附Matlab代码

    2023-12-11 21:52:01       55 阅读