如果每个块中的线程数量已经超过CUDA核心的数量,那么同时启动一个块网格与一次启动一个块相比,是否有任何性能优势?
发布于 2012-08-08 22:23:19
我认为是有的;一个线程块被分配给一个流式多处理器( SM ),SM进一步将每个块的线程划分为32个线程(较新的体系结构可以处理更大的warps),这些线程被调度为按顺序(多-少)执行。考虑到这一点,将每个计算分成块会更快,以便它们占用尽可能多的SMs。构建是卡支持的每个经线的线程的倍数的块也意味着已满(对于SMs使用32线程经线的情况,是32或64个线程的块,而不是40个线程的块)。
https://stackoverflow.com/questions/11865145
复制相似问题