使用cublas库遇到的问题(CUDA编程)

cublas库是在NVIDIA CUDA上实现blas(基本线性代数子程序),该库是已经封装好的,可以利用该库进行向量和矩阵的多种操作,具体不在赘述。

下面来介绍调用cublas库可能会出现的问题以及解决办法。

1.首先调用cublas库需要添加头文件#include,编译我们已经写好的代码时可能会出现(error LNK2019:无法解析的外部符号_cublasSgemm_vs@56,该符号在函数_main kernel.cu.obj中被引用)的错误提示,这是表示我们的项目属性里面缺少cublas的静态数据连接库,我们解决办法:右键点击我们的项目——属性——配置管理器(右上角)——活动解决方案平台——选择x64,然后就是添加cublas的静态连接库:配置属性——链接器——输入——附加依赖项——编辑(添加cublas.lib),然后在编译就可以运行了。

2.如果编译成功了,但是运行时出现文件丢失情况(例如:xxxx.dll文件缺失,安装此文件才能使程序正常运行),这说明我们的系统中动态连接库文件丢失了,虽然编译成功了但是没有动态连接库我们的程序是无法运行的。解决办法:在电脑上C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.1中搜索报错丢失的xxxx.dll文件;然后把这个dll拷贝到C:\Windows\System32。然后在运行我们的代码就可以了。

你可能感兴趣的:(使用cublas库遇到的问题(CUDA编程))