int2与int4在Fermi架构上加载

时间:2011-05-17 21:28:59

标签: c cuda nvidia

如果需要将两个int2从设备内存加载到寄存器,那么使用int2的两个连续加载与使用int4的一个加载相比要差多少?

1 个答案:

答案 0 :(得分:4)

这取决于GPU和内存访问模式。但是,假设(在问题中缺少信息)计算能力2.0+ GPU(Fermi GPU)上的顺序寻址,请参阅GTC 2010中this presentation by Paulius Micikevicius的幻灯片27。

幻灯片显示,对于多处理器占用率较低(每个多处理器的低活动线程数),int4可以与int2产生很大的差异。对于高入住率,几乎没有差别。

但是,正如幻灯片所说,“几个独立的小型访问具有相同的效果 作为一个更大的。例如:四个32位〜=一个128位“。因此,如果您需要加载的两个int2值是独立的,只需在代码中一个接一个地发出两个加载,它应该与执行几乎相同的性能一个int4,假设上面提到的连贯内存访问。