如何启用已禁用的流处理器(SM)?

如何启用已禁用的流处理器(SM)?

我使用的是 NVIDIA Quadro K2000 GPU。我运行了deviceQuery.exe,结果如下。它说我只有 2 个 SM 单元。我不确定我是否真的只有 2 个 SM,或者我的一些 SM 被禁用了,如此 SO 问题的第三条评论

我还看到每个 SM 的 SP 数量为 192。也许有某种方法可以启用更多 SM,然后每个 SM 的 SP 数量就会减少。

图像

更新:我之所以问这个问题是因为我想让我的 GPU 处理效率更高。我有一张 1080 x 1920 的图像,我将其分成三个部分。我正在传输这些段 H2D,异步处理和传输 D2H。因此,我想选择这样的块尺寸和每个块的线程数,以有效地利用我的 GPU 的硬件配置。此外,我仍然感到困惑,一个拥有超过 2 个 SM(假设 8 个 SM)但每个 SM 的 SP 数量较少(384/8 = 每个 SM 48 SP)的 GPU 的性能会与一个拥有 2 个 SM 和每个 SM 192 个 SP 的 GPU 相同吗?我的意思是,可用 SP 的总数重要吗?

答案1

为了:

  1. 我不确定我是否真的只有 2 条 SM,或者我的一些 SM 被禁用了

    您的 GPU 是 GK107。它有两个 SMX,每个有 192 SP。没有禁用的处理器。

  2. 可能有某种方法可以启用更多的 SM,然后每个 SM 的 SP 数量就会减少。

    没有什么神奇的方法可以通过软件来改变硅片。

  3. 我仍然感到困惑,一个具有多于 2 个 SM(假设为 8 个 SM)但每个 SM 的 SP 数量较少(384/8 = 每个 SM 48 SP)的 GPU 的性能与一个具有 2 个 SM 并且每个 SM 有 192 个 SP 的 GPU 的性能相同吗?

    这是一个很大的问题,我不会在这里尝试回答。NVIDIA 发布了很多非常详细的白皮书,介绍了其各代旗舰计算卡的架构和性能。如果你有兴趣,我建议你亲自阅读。话虽如此,经验法则是在同一架构代内设备拥有的 SM 或 SMX 越多,它在算术约束操作中的表现就越好。比较不同代的 GPU 是徒劳的。例如,NVIDIA 发布的第一款 Telsa 计算卡有 16 个 SM(C860)。最新的有 15 个 SMX(K40)。它们的峰值单精度性能相差约 10 倍。还要注意,许多现实世界的应用程序都受到内存带宽的限制,这可能会从根本上改变不同卡之间的性能差异。虽然核心数量和峰值 FLOP 或多或少遵循摩尔定律,但内存带宽却没有。

相关内容