【问题标题】:cuda 'memory bound' vs 'latency bound' vs 'bandwidth bound' vs 'compute bound'cuda“内存限制”vs“延迟限制”vs“带宽限制”vs“计算限制”
【发布时间】:2014-06-10 07:02:38
【问题描述】:

在许多在线资源中,可以找到“内存”、“带宽”、“延迟”绑定内核的不同用法。在我看来,作者有时会使用他们自己对这些术语的定义,我认为这对某人做出明确区分非常有益。

据我了解: 带宽绑定内核在访问全局内存方面接近设备的物理限制。例如。在 M2090 设备上,应用程序使用 177GB/s 中的 170GB/s。

延迟受限的内核是其主要的停顿原因是由于内存提取。所以我们并没有使全局内存总线饱和,但仍然需要等待数据进入内核。

计算绑定内核是计算在内核时间中占主导地位的内核,假设为内核提供内存没有问题,并且算术和延迟有很好的重叠。

如果我做对了,“内存绑定”内核会是什么?是否有歧义,如果有,我们是否应该将对话限制在上述三个术语上?

谢谢!

【问题讨论】:

  • 是不是还有一种经常发生的情况:受pci-e传输率的限制?

标签: memory cuda bandwidth


【解决方案1】:

什么是“内存绑定”内核?

内存限制是指代码受内存访问限制的一般情况,即。它包括受延迟限制的代码和受带宽限制的代码。您已经正确定义了几乎所有其他术语。

是否有歧义,如果有,我们是否应该将对话限制在上述三个术语上?

我认为没有太多歧义(无论如何,你已经清楚地划分了 4 个术语中的 3 个),而且你不会在 SO 问题/答案中强加秩序。

【讨论】:

  • 感谢您的澄清。我的意思只是“内存绑定”的歧义。干杯
猜你喜欢
  • 2019-05-08
  • 1970-01-01
  • 1970-01-01
  • 2012-01-04
  • 1970-01-01
  • 1970-01-01
  • 2013-03-05
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多