0
A
回答
2
连续代码仍然会按顺序计算,唯一的变化是所有线程都会并行计算此代码。
假设下面这个简单的内核(蔻这里写下来,未测试):
__global__ void kernel(int *array, int N)
{
if (threadIdx.x < N)
{
// complete for loop is computed parallel for different threads
for (int i=0; i<1000; i++)
{
// every single thread perfomes this statement 1000 times
array[threadIdx.x] += i;
}
}
}
为同一经线中不同线程的完整的循环将被计算并行。但是每一个线程都会为自己的循环顺序计算这个值。
相关问题
- 1. 定时并行CUDA内核
- 2. CUDA并行内核执行,每个流有多个内核
- 3. cuda了解并发内核执行
- 4. CUDA流和并发内核执行
- 5. 执行CUDA内核几次
- 6. CUDA 2D内核合并内存
- 7. 在CUDA内核
- 8. CUDA块并行性
- 9. 配置文件并发CUDA内核
- 10. 并发内核启动示例 - CUDA
- 11. CUDA内核的奇怪行为
- 12. CUDA上的定时内核执行
- 13. 调用CUDA内核
- 14. CUDA内核挂起
- 15. 使用CUDA内核
- 16. CUDA同步内核
- 17. CUDA内核函数
- 18. Cuda内核配置
- 19. cuda - 内核优化
- 20. CUDA内核参数
- 21. 调试CUDA内核
- 22. 在CUDA中并行运行多个子内核
- 23. 并发CUDA内核执行的优先级
- 24. 并行化来自CUDA设备函数/内核的方法
- 25. 内核中的CUDA流ID
- 26. Cuda的:内核调用
- 27. CUDA:内核CRT的文档?
- 28. CUDA中的嵌套内核
- 29. CUDA中的内核调用
- 30. CUDA内核的参数