一个warp是32个线程。 32个线程是否在多处理器中并行执行? 如果32个线程没有并行执行,那么在warp中没有竞争条件。 我经历了一些例子后,得到了这个疑问。CUDA warp中的线程是否在多处理器上并行执行?
2
A
回答
4
在CUDA编程模型中,一个warp内的所有线程并行运行。但是硬件中的实际执行可能并不是并行的,因为SM(流多处理器)中的内核数量可能少于32个。例如,GT200架构每个SM有8个内核,并且一个warp内的线程需要4个时钟周期完成执行。如果多个线程写入相同的位置(共享内存或全局内存),并且如果您不想竞争,那么您必须使用原子操作或锁定,因为CUDA编程模型并不能保证哪个线程是去写。
-1
相关问题
- 1. 多线程/并行处理
- 2. 在处理器内核上如何执行多个线程
- 3. CUDA并行线程
- 4. CUDA的总线程数(执行一段时间,不是并行)是多少?
- 5. 可以在多处理器环境中执行Java线程吗?
- 6. 并行执行java中的多线程
- 7. 在PHP中执行线程处理
- 8. 在不同的处理器中并行执行两个程序
- 9. CUDA线程执行顺序
- 10. Cuda并行执行
- 11. MultiProgramming,多线程和并行处理?
- 12. CUDA中的全局内存是否在原始操作上并行执行?
- 13. 线程与并行处理
- 14. 并行处理Python线程
- 15. C++线程 - 并行处理
- 16. 为什么单个线程进程在多个处理器/内核上执行?
- 17. 线程的执行处理程序
- 18. CUDA线程是否以O(n)操作的锁步执行?
- 19. 使用CUDA并行执行多个SVD
- 20. System.Event是否在主线程中执行?
- 21. 在流水线执行中采用并行处理
- 22. 并行执行和终止多线程
- 23. 并行执行多条线程
- 24. 多核处理器上的多线程
- 25. CUDA并发执行
- 26. 多并行并行处理
- 27. 线程中的处理程序的行为是否不同?
- 28. 如何在Java中调用REST端点的并行处理/多线程处理
- 29. 在什么线程上执行事件处理程序?
- 30. 中断处理程序在不同的线程中执行?
似乎是重复的:http://stackoverflow.com/questions/5268103/cuda-threads-in-a-wrap你为什么问同样的问题两次? – 2011-03-11 04:48:46
请不要提出重复的问题,只需编辑这一个。正如你在另一方面有答案一样,我已经合并了它们。 – 2011-03-11 08:27:28