【问题标题】:CUDA Cores and Streaming Multiprocessors Count for Inference SpeedCUDA 内核和流式多处理器对推理速度至关重要
【发布时间】:2020-05-04 02:58:09
【问题描述】:

据我了解,NVIDIA GPU 的 CUDA 内核数量决定了它运行单个深度学习模型的速度。

因此,如果我使用 NVIDIA TITAN RTX GPU 在 0.5 秒内对模型运行推理,该 GPU 具有 72 个流式多处理器和 4608 个内核,并且它利用 GPU 的最大利用率约为 10%,我可以假设使用了 10% 的流式多处理器(大约 7 个)?因此,大约使用了大约 900 个 CUDA 内核? (我基于这个答案:https://superuser.com/questions/1109695/how-to-determine-number-of-gpu-cores-being-utilized-for-a-process)

因此,如果我降级到具有 3000 个 CUDA 内核的较低 GPU,理论上它应该仍然能够以相同的 0.5 秒速度执行推理,对吧?

【问题讨论】:

    标签: cuda gpu nvidia inference


    【解决方案1】:

    这不是对利用率的正确解释。 10% 的利用率,粗略地说,意味着 10% 的时间,GPU 内核正在运行。 90% 的时间,没有 GPU 内核在运行。它不会告诉您有关 GPU 内核正在做什么或它正在使用多少资源的任何信息。超级用户给出的答案是错误的。正确的描述是here。正如那里所指出的,可以证明仅使用一个“核心”(即仅使用一个线程的内核)的 GPU 内核的利用率为 100%。

    关于您的问题,您不应假设如果从具有 4608 个内核的 GPU 切换到具有 3000 个内核的 GPU,性能不会发生任何变化。首先,这些信息不足以判断性能(例如时钟速度和其他事情很重要),其次,如果您假设它们是同一代 GPU,那么具有 3000 个内核的 GPU 可能会比4608核的GPU。这是因为对于给定的 GPU 架构一代,时钟速度、内存带宽等其他因素在具有 3000 个内核的 GPU 上都可能较低。

    简而言之,我不会假设推理性能是相同的。除了您在此处指出的内容之外,这还取决于其他事情。我认为它可能更快,也可能更慢,具体取决于实际的 GPU 比较。

    就目前可用的 CUDA GPU 而言,几乎任何东西的推理性能都可能比 Titan RTX 稍慢。差异可能很小,可能可以忽略不计,也可能更大,具体取决于特定的 GPU。

    【讨论】:

    • 非常感谢您富有洞察力的回复!我比较 Titan RTX 的 GPU 是 Quadro RTX 5000。我注意到 Quadro RTX 5000 的核心时钟速度稍慢(1350 MHz 对 1620 MHz)和内存带宽更低(448 GB/秒对 672 GB/秒)。你会说这些是推理性能的两个更重要的因素吗?如果是这样,您是否认为推理性能会明显变差?
    • 我认为它会更慢/更糟。我真的不能说具体是多少。差异很可能可以忽略不计。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-12
    • 2014-12-17
    • 1970-01-01
    • 1970-01-01
    • 2015-12-29
    相关资源
    最近更新 更多