0

根据Kepler 架构白皮书,SMX 具有192CUDA 内核和64双精度单元 (DPU)。对于 K20Xm,14SMX 的内核总数2688,这意味着只计算 CUDA 内核。那么 DPU 的用途到底是什么,它们的用途与内核有什么关系?

我的想法:

a) CUDA 核心不能进行双精度运算,只有 DPU 可以。因此,当 DPU 忙时,CUDA 内核可用于其他工作。

b) CUDA 内核不知何故需要一个双精度单元来执行双精度操作,因此只有128CUDA192内核可用于其他东西。

干杯安迪

4

1 回答 1

2

双精度单元实际上是执行双精度算术的独立硬件浮点单元。它们独立于“cuda cores”,粗略地说,可以认为是单精度单元。

所以对于单精度算术,吞吐量可以基于“cuda cores”或单精度单元来计算。对于双精度算术,吞吐量必须基于双精度单位计算。

在 Kepler K20 SMX 中,双精度单位与单精度单位的比例为 1:3。因此,每种算术类型的吞吐量遵循相同的比率。“算术”是指浮点乘法或浮点加法。

于 2013-12-09T14:06:18.540 回答