假设我有8个线程块,而我的GPU有8个SM。那么GPU如何将这个线程块发布给SM?

我发现一些程序或文章建议采用广度优先的方式,即在此示例中,每个SM都运行一个线程块。
但是,根据一些文件,如果GPU内核受延迟限制,那么增加占用率可能是个好主意。如果可以的话,可以推断出8个线程块将在4个或更少的SM上运行。

我不知道哪个是现实。
提前致谢。

最佳答案

很难说出GPU到底在做什么。如果您有感兴趣的特定内核,则可以尝试读取和存储每个块的%smid寄存器。

here提供了一个示例。

关于cuda - Nvidia的Fermi GPU如何将线程块发布到流式多处理器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14642619/

10-09 18:53