通过微基准测试剖析GPU存储层次结构
Dissecting GPU Memory Hierarchy through Microbenchmarking
摘要:
存储器访问效率是充分利用图形处理单元(GPU)的计算能力的关键因素。然而,GPU存储层次结构的许多细节并未由GPU供应商公布。在本文中,我们提出了一种新的细粒度的微基准测试方法,并将其应用到三代NVIDIA GPU,即费米,开普勒和麦克斯韦,揭露以前未知的特点,他们的存储层次结构。具体来说,我们研究了不同的GPU缓存系统的结构,如数据缓存,纹理缓存和翻译后备缓冲区(TLB)。我们还调查了GPU的全局内存和共享内存的吞吐量和访问延迟。我们的微基准测试结果提供了一个更好的理解神秘的GPU存储层次结构,这将有助于软件优化和建模的GPU架构。据我们所知,这是第一个揭示Kepler和Maxwell GPU的缓存属性的研究,以及Maxwell在存储体冲突下共享内存性能的优势。
英文摘要:
Memory access efficiency is a key factor in fully utilizing the computational power of graphics processing units (GPUs). However, many details of the GPU memory hierarchy are not released by GPU vendors. In this paper, we propose a novel fine-grained microbenchmarking approach and apply it to three generations of NVIDIA GPUs, namely Fermi, Kepler and Maxwell, to expose the previously unknown characteristics of their memory hierarchies. Specifically, we investigate the structures of different GPU cache systems, such as the data cache, the texture cache and the translation look-aside buffer (TLB). We also investigate the throughput and access latency of GPU global memory and shared memory. Our microbenchmark results offer a better understanding of the mysterious GPU memory hierarchy, which will facilitate the software optimization and modelling of GPU architectures. To the best of our knowledge, this is the first study to reveal the cache properties of Kepler and Maxwell GPUs, and the superiority of Maxwell in shared memory performance under bank conflict.
机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。