Fine-Grained Memory Profiling of GPGPU Kernels
Abstract
Memory performance is a crucial bottleneck in many GPGPU applications, making optimizations for hardware and software mandatory. While hardware vendors already use highly efficient caching architectures, software engineers usually have to organize their data accordingly in order to efficiently make use of these, requiring deep knowledge of the actual hardware. In this paper we present a novel technique for fine-grained memory profiling that simulates the whole pipeline of memory flow and finally accumulates profiling values in a way that the user retains information about the potential region in the GPU program by showing these values separately for each allocation. Our memory simulator turns out to outperform state-of-theart memory models of NVIDIA architectures by a magnitude of 2.4 for the L1 cache and 1.3 for the L2 cache, in terms of accuracy. Additionally, we find our technique of fine grained memory profiling a useful tool for memory optimizations, which we successfully show in case of ray tracing and machine learning applications.
BibTeX
@article {10.1111:cgf.14671,
journal = {Computer Graphics Forum},
title = {{Fine-Grained Memory Profiling of GPGPU Kernels}},
author = {Buelow, Max von and Guthe, Stefan and Fellner, Dieter W.},
year = {2022},
publisher = {The Eurographics Association and John Wiley & Sons Ltd.},
ISSN = {1467-8659},
DOI = {10.1111/cgf.14671}
}
journal = {Computer Graphics Forum},
title = {{Fine-Grained Memory Profiling of GPGPU Kernels}},
author = {Buelow, Max von and Guthe, Stefan and Fellner, Dieter W.},
year = {2022},
publisher = {The Eurographics Association and John Wiley & Sons Ltd.},
ISSN = {1467-8659},
DOI = {10.1111/cgf.14671}
}