这是关于离散GPU的问题,主要是最近的GPU(NVIDIA Kepler,Maxwell;以及AMD Kaveri和R290中的任何内容)。
从...开始将未处理的元素加载到寄存器中需要多少钱?
在某个地方找到一张桌子的链接会很棒,一个解释就可以了......
答案 0 :(得分:2)
它在gpu,代,它如何集成(如pcie)和其他东西上有所不同。 我经常与ASM合作,这些是我合作的数字:
- 全球设备内存?大约300-800个时钟。 (主板安装的GPU,如使用主内存的笔记本电脑内存较慢)
- 全局内存L2缓存?大约100个时钟周期
- 纹理缓存?猜测50-100个时钟周期
-Constant cache(s)?大约1-3个时钟周期,如果它在缓存或L2缓存(~50-100个时钟)或甚至全局mem 300-500时钟。 (取决于它是否是缓存命中或未命中)
-Per-core(即Kepler / Maxwell的Per-SMX / SMM)L1缓存?约1-3个时钟周期
-Per-core(即Kepler / Maxwell中的Per-SMX / SMM)共享内存?约1-3个时钟周期
我还做了一些在线搜索,看看我有多接近并发现了这一点。数字与我的不同。 http://lpgpu.org/wp/wp-content/uploads/2013/05/poster_andresch_acaces2014.pdf我认为由于多线程,实际花费的时间与程序员应该使用的实际时间是两个不同的数字。希望这会有所帮助。