cuda能开上亿线程吗

cuda能开上亿线程吗,第1张

这个程序不能开上亿线程。

一个CUDA程序包含了两个部分代码,在CPU上运行的主机代码和肆旦滚在GPU上裂余运行的设备代码。

而CPU上线程是重量级实体,可以开启1~32个线程,且上下文切换较迟行为缓慢,GPU上线程是高度轻量级的,可以开几百甚至上千个线程,所以CUDA开不了上亿线程。

__global__ static void sumOfSquares(int *gpudata, int* result) 你把static去掉!另敏咐薯外我简芦不明白你的global函数里面为什么没有定义线程的索引啊。那你那些数据运算是在哪桥者运算的啊。我觉得应该定义int bx=blockIdx.x之类的变量啊,你这程序就是在一个线程中执行,没有并行。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12289773.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存