An access pattern based adaptive mapping function for GPGPU scratchpad memory

  • Han Feng
    School of Electronic Science and Engineering, Nanjing University
  • Li Li
    School of Electronic Science and Engineering, Nanjing University
  • Wang Kun
    School of Electronic Science and Engineering, Nanjing University
  • Feng Fan
    School of Electronic Science and Engineering, Nanjing University
  • Pan Hongbing
    School of Electronic Science and Engineering, Nanjing University
  • Sha Jin
    School of Electronic Science and Engineering, Nanjing University
  • Lin Jun
    School of Electronic Science and Engineering, Nanjing University

Abstract

<p>As modern GPUs integrate massive processing elements and limited memories on-chip, the efficiency of using their scratchpad memories becomes important for performance and energy. To meet bandwidth requirement of simultaneously accessing of a thread array, multi-bank design, dividing a scratchpad memory into equally-sized memory modules, are widely used. However, the complex access patterns in real-world applications can cause the bank conflicts which comes from different threads accessing the same bank at the same time, and the conflicts hinder the performance sharply. A mapping function is a method that redistributes the accesses according to access addresses. To reduce bank conflicts some scratchpad memory mapping functions are exploited, such as XOR based hash functions and configurable functions. In this paper, we propose an adaptive mapping function, which can dynamically select a suitable mapping function for applications based on the statistics of first block executing. The experimental results show that 94.8 percent bank conflicts reduced and 1.235× performance improved for 17 benchmarks on GPGPU-sim, a Fermi-like simulator.</p>

Journal

  • IEICE Electronics Express

    IEICE Electronics Express 14 (12), 20170373-20170373, 2017

    The Institute of Electronics, Information and Communication Engineers

References(4)*help

See more

Details 詳細情報について

Report a problem

Back to top