Managing DRAM latency divergence in irregular GPGPU applications

N Chatterjee, M O'Connor, GH Loh… - SC'14: Proceedings …, 2014 - ieeexplore.ieee.org
SC'14: Proceedings of the International Conference for High …, 2014ieeexplore.ieee.org
Memory controllers in modern GPUs aggressively reorder requests for high bandwidth
usage, often interleaving requests from different warps. This leads to high variance in the
latency of different requests issued by the threads of a warp. Since a warp in a SIMT
architecture can proceed only when all of its memory requests are returned by memory, such
latency divergence causes significant slowdown when running irregular GPGPU
applications. To solve this issue, we propose memory scheduling mechanisms that avoid …
Memory controllers in modern GPUs aggressively reorder requests for high bandwidth usage, often interleaving requests from different warps. This leads to high variance in the latency of different requests issued by the threads of a warp. Since a warp in a SIMT architecture can proceed only when all of its memory requests are returned by memory, such latency divergence causes significant slowdown when running irregular GPGPU applications. To solve this issue, we propose memory scheduling mechanisms that avoid inter-warp interference in the DRAM system to reduce the average memory stall latency experienced by warps. We further reduce latency divergence through mechanisms that coordinate scheduling decisions across multiple independent memory channels. Finally we show that carefully orchestrating the memory scheduling policy can achieve low average latency for warps, without compromising bandwidth utilization. Our combined scheme yields a 10.1% performance improvement for irregular GPGPU workloads relative to a throughput-optimized GPU memory controller.
ieeexplore.ieee.org