社区
CUDA
帖子详情
CPU多线程同时调用基于CUDA编写的函数
梧桐栖鸦
博客专家认证
2016-11-30 08:12:13
现在有个函数是基于CUDA编写对数据进行处理,在一个多核CPU上开两个线程,同时调用该函数,根据现有GPU架构能不能实现这个函数在两个CPU线程下同时进行运算
...全文
1303
2
打赏
收藏
CPU多线程同时调用基于CUDA编写的函数
现在有个函数是基于CUDA编写对数据进行处理,在一个多核CPU上开两个线程,同时调用该函数,根据现有GPU架构能不能实现这个函数在两个CPU线程下同时进行运算
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
2 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
chinahuangyong
2020-05-17
打赏
举报
回复
你好,解决了吗
梧桐栖鸦
2017-01-13
打赏
举报
回复
没人回答,我自己查到资料了,CPU多线程不能同时调用同一个kernel函数在GPU计算!!!结帖!!!
CUDA
编程问题记录:能否用
CPU
多线程
调用
CUDA
核
函数
问题:能否在主机端创建
CPU
多线程
,在每个线程里
调用
设备端核
函数
的caller
函数
,进而实现进一步的并行运行。 例如有5张图片,对于每张图片都有N个GPU线程对其进行像素操作,但是此时是逐一对这5张图片处理的,想在主机端创建5个
CPU
线程,每个线程里进行 传输到设备端–>设备端GPU
多线程
处理–>结果返回主机端 这一系列操作,实现五张图片同时处理 此方法能否实现: 不能 只存在一个流时(默认的流),所有
调用
核
函数
的指令将被存在一个队列中,依次执行。因此直接使用
CPU
多线程
调用
kernel
函数
不能
我与计算机视觉-[
CUDA
]-[
CPU
多线程
下
CUDA
的多流]
首先问题出在
cpu
下的
多线程
,当你想要在多个线程下
调用
同一个
cuda
核
函数
的时候,你会发现效率很低,那么经过验证,的确,不管你有多少个线程,
cuda
总是将线程中的核
函数
放入默认流中进行队列方式的处理,相当于单线程,但是这个问题在
cuda
7后已经得到了解决,下面对这个问题进行一些测试。 这里使用了以下链接中的内容: https://www.cnblogs.com/wujianming-110117/p/14091897.html https://developer.nvidia.com/blog/gpu
主机端
多线程
调用
CUDA
性能问题
C++主机端
多线程
调用
cuda
GPU编程2---
CUDA
核
函数
和线程配置
CUDA
核
函数
在GPU上执行的
函数
称为
CUDA
核
函数
(Kernel Function),核
函数
会被GPU上多个线程执行,我们可以在核
函数
中获取当前线程的ID。 //
CUDA
核
函数
的定义 __global__ void addKernel(int *c, const int *a, const int *b) { int i = threadIdx.x; c[i] = a[i] + b[i]; } //
CUDA
核
函数
调用
addKernel<<<Dg,Db, Ns
C++
多线程
调用
cuda
Ver2
前面已经写过一个c++
多线程
调用
cuda
优化的文章,但是根据那种方式,在项目上尝试,发现仍然不行,其中一个库是加密库,看不到里面实现了什么,暂时叫它BF库,怀疑是BF库里面有大量的
cuda
Memcpy,所以才会导致效果不明显,所以这个文章再整理下库中包含
cuda
Memcpy的情况,也是边尝试,边整理。...
CUDA
580
社区成员
2,919
社区内容
发帖
与我相关
我的任务
CUDA
CUDA™是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。 它包含了CUDA指令集架构(ISA)以及GPU内部的并行计算引擎。
复制链接
扫一扫
分享
社区描述
CUDA™是一种由NVIDIA推出的通用并行计算架构,该架构使GPU能够解决复杂的计算问题。 它包含了CUDA指令集架构(ISA)以及GPU内部的并行计算引擎。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章