Cayman Architecture中的本地数据存储与纹理缓存,用于科学计算

时间:2011-06-16 22:04:27

标签: opencl gpgpu matrix-multiplication ati

我正在尝试在ATI HD 6990卡(Cayman架构)上使用AMD-APP-SDK 2.4实施GEMM实施。

其中一种优化技术是使用阻塞/平铺。

在它的实现中,如果我们将子矩阵存储在共享的本地内存中,或者当我们使用纹理缓存时它是否更快,它会更快吗?如果可能的话也请说明理由。

还请建议哪个更容易实施。

感谢。

P.S。我想要它仅用于单精度,如果重要的话!

注意:子矩阵的大小不是问题,但我觉得因为它越大越好。唯一要考虑的因素是,如果内存单位是128位(4单精度),那么块大小应该是4的倍数。

1 个答案:

答案 0 :(得分:1)

赛普拉斯芯片用于5800系列Radeon。 6900系列使用 Cayman 内核,它有几个重要的区别,最值得注意的是它是VLIW4架构,而不是早期内核中使用的VLIW5配置。

与往常一样,了解哪种方法更快的唯一明确方法是对其进行基准测试。特别是,由于您没有提供有关子矩阵大小的信息,因此很难说它们最适合的位置。