矩阵运算的GPU加速!!求教各位大神帮忙!在此谢过
来源:互联网 发布:王者荣耀手办淘宝 编辑:程序博客网 时间:2024/05/22 06:35
最近在做计算机视觉的问题,里面涉及到矩阵的乘法,包括A*B, A'B 和AB', 我们稍微改了下内容,不知道如何用GPU加速,希望大神指导一下,谢谢啦!
void gemm_nn(ptrdiff_t M, ptrdiff_t N, ptrdiff_t K,float ALPHA,float const *A, ptrdiff_t lda,float const *B, ptrdiff_t ldb,float *C, ptrdiff_t ldc,ptrdiff_t numGroup, ptrdiff_t filtersVolume_step){int i, j, k, g;for (g = 0; g<numGroup; ++g){ptrdiff_t filterGrpOffset = K * N * g;ptrdiff_t tempGrpOffset = M*filtersVolume_step*g;ptrdiff_t outputGrpOffset = M*N*g;for (j = 0; j < N; ++j){for (k = 0; k < K; ++k){register float temp = ALPHA * (*(B + filterGrpOffset + j*ldb + k));for (i = 0; i < M; ++i){*(C + outputGrpOffset + j*ldc + i) += temp * (*(A + tempGrpOffset + k*lda + i));}}}}}void gemm_tn(ptrdiff_t M, ptrdiff_t N, ptrdiff_t K,float ALPHA,float const *A, ptrdiff_t lda,float const *B, ptrdiff_t ldb,float *C, ptrdiff_t ldc,ptrdiff_t numGroup, ptrdiff_t filtersVolume_step){int i, j, k, g;for (int g = 0; g<numGroup; ++g){ptrdiff_t filterGrpOffset = M * N * g;ptrdiff_t tempGrpOffset = K * filtersVolume_step * g;ptrdiff_t derOutputGrpOffset = K *N *g;for (j = 0; j < N; ++j){for (i = 0; i < M; ++i){register float sum = 0;for (k = 0; k < K; ++k){sum += (*(A + tempGrpOffset + i*lda + k)) * (*(B + derOutputGrpOffset + j*ldb + k));}*(C + filterGrpOffset + j*ldc + i) += ALPHA*sum;}}}}void gemm_nt(ptrdiff_t M, ptrdiff_t N, ptrdiff_t K,float ALPHA,float const *A, ptrdiff_t lda,float const *B, ptrdiff_t ldb,float *C, ptrdiff_t ldc,ptrdiff_t numGroup, ptrdiff_t filtersVolume_step){int i, j, k, g;for (int g = 0; g<numGroup; ++g){ptrdiff_t filterGrpOffset = N * K * g;ptrdiff_t tempGrpOffset = M * filtersVolume_step *g;ptrdiff_t derOutputGrpOffset = M * K *g;for (j = 0; j < N; ++j){for (k = 0; k < K; ++k){register float temp = ALPHA*(*(B + filterGrpOffset + k*ldb + j));for (i = 0; i < M; ++i){*(C + tempGrpOffset + j*ldc + i) += temp * (*(A + derOutputGrpOffset + k*lda + i));}}}}}
0 0
- 矩阵运算的GPU加速!!求教各位大神帮忙!在此谢过
- 实验,求高手帮忙做下,小弟在此谢过了啊,大侠帮忙的来啊
- 请教 中缀—后缀转换问题 帮忙找一下错误 在此真诚谢过
- 个位大虾帮忙看一下,小弟实在太菜了,在此谢过~~~~~~~~
- 请各位大虾帮忙!小女子谢过了!:)
- 求各位大神帮忙(java)
- 【腾讯android的SDK】mTencent总是实例化失败,各位大神菜鸟求教!!!
- 在matlabR2009a中mex怎么都不成功 求各位大神帮忙呀
- j2se中如何写界面啊,求教各位大神
- 既然GPU可以加速某些运算,为何应用程序要提供禁用GPU加速的选项
- 求各位的大神
- 违反唯一约束条件怎么解决,求各位大神帮忙
- 本人新手 希望各位大神帮忙做以下几道题 谢谢!!
- OpenCl加速矩阵运算
- OpenCl_CPU加速矩阵运算
- OpenCl_CPU加速矩阵运算
- 不明白的错误!各位帮忙一下!谢了!
- 各位大神,请教在C++下定积分的算法
- 七周七种前端框架三: Angular2 之 TypeScript
- VMware Workstation中Ubuntu 的 VMware Tools安装完hgfs无文件夹的解决
- windows server 2012配置MySQL 和 tomcat
- CCBPM对业务型SaaS客服领域的支持
- 集合框架
- 矩阵运算的GPU加速!!求教各位大神帮忙!在此谢过
- 【整理】FFMPEG相关开源项目
- [leetcode]Factorial Trailing Zeroes
- 设置Bitmap平铺效果
- 【Leet Code】64. Minimum Path Sum---Medium
- coco2d-js 无法加载网络图片(Failed to execute 'texImage2D' on ‘WebGLRenderin
- linux socket 缓冲区默认大小
- Caused by: java.lang.UnsatisfiedLinkError: Couldn't load p7zip from loader dalvik.system.PathClassL
- tapestry 016