CUDA
lumanman_
这个作者很懒,什么都没留下…
展开
-
cuda矩阵转置
一直以为经典的cuda矩阵转置只能用于矩阵的宽高都能被线程块大小整除的情况,也是很奇怪,不知道怎么形成这个概念的,然后这次又要用到,本想着大干一番,把宽高不能被线程块整除的矩阵转置攻克了,可是没想到一测试,人本来就可以实现,这就尴尬了, 所以在此记录下来,纠正自己的这个错误。代码:#define BLOCK_DIM 16__global__ void myTranspose原创 2017-09-05 17:24:16 · 1704 阅读 · 0 评论 -
利用cublas库函数cublasSgetrfBatched和cublasSgetriBatched求矩阵的逆
折腾了好几天终于把cublas矩阵求逆调好了,但是依然还是有很多疑问,因为是按照网上别人的程序凑出来的。主要的疑惑有两点,在这里贴出来,希望有大神可以指点一二,大家交流交流。①矩阵初始化的时候,matHost[0],为什么不可以像我注释掉的那两句那样子初始化,那样初始化的时候就会报错:expected an expression。②为什么要定义一个在host端的指针srchd,它的原创 2017-08-30 16:18:48 · 4093 阅读 · 9 评论 -
cublas无法解析的外部符号
使用cublas的时候出现错误:无法解析的外部符号XXX解决方法:①这里选择x64②项目->属性->链接器->输入->附加依赖项,添加cublas.lib。这样就可以啦!原创 2017-08-28 20:31:40 · 1470 阅读 · 0 评论 -
cublasSgemm函数实现矩阵乘
①cublas中矩阵是按照列主元素存储的,所以想要计算A*B,那么输入的应该是B*A,就是把原来的B放在A的位置,把原来的A放在B的位置,这样子输出的就是A*B的结果。因为我们输入B,其实cublas读入的就是B的转置,A就是A的转置,然后BT*AT = (AB)T,但是再按列主元读出来的时候就是AB啦。②m,n,k,以及lda,ldb,ldc这6个参数怎么输入啦。m是op(放在A矩阵的位置的原创 2017-09-03 17:13:02 · 1452 阅读 · 5 评论