• DocumentCode
    157826
  • Title

    Supporting x86-64 address translation for 100s of GPU lanes

  • Author

    Power, Jonathan ; Hill, Mark D. ; Wood, David A.

  • Author_Institution
    Dept. of Comput. Sci., Univ. of Wisconsin-Madison, Madison, WI, USA
  • fYear
    2014
  • fDate
    15-19 Feb. 2014
  • Firstpage
    568
  • Lastpage
    578
  • Abstract
    Efficient memory sharing between CPU and GPU threads can greatly expand the effective set of GPGPU workloads. For increased programmability, this memory should be uniformly virtualized, necessitating compatible address translation support for GPU memory references. However, even a modest GPU might need 100s of translations per cycle (6 CUs * 64 lanes/CU) with memory access patterns designed for throughput more than locality. To drive GPU MMU design, we examine GPU memory reference behavior with the Rodinia benchmarks and a database sort to find: (1) the coalescer and scratchpad memory are effective TLB bandwidth filters (reducing the translation rate by 6.8x on average), (2) TLB misses occur in bursts (60 concurrently on average), and (3) postcoalescer TLBs have high miss rates (29% average). We show how a judicious combination of extant CPU MMU ideas satisfies GPU MMU demands for 4 KB pages with minimal overheads (an average of less than 2% over ideal address translation). This proof-of-concept design uses per-compute unit TLBs, a shared highly-threaded page table walker, and a shared page walk cache.
  • Keywords
    cache storage; graphics processing units; multi-threading; storage management; virtualisation; CPU threads; GPGPU workloads; GPU MMU design; GPU lanes; GPU memory reference behavior; GPU memory references; GPU threads; Rodinia benchmarks; TLB bandwidth filters; memory access patterns; memory management unit; memory sharing; memory virtualization; postcoalescer TLBs; programmability; scratchpad memory; shared highly-threaded page table walker; shared page walk cache; translation rate reduction; x86-64 address translation; Arrays; Benchmark testing; Graphics processing units; Kernel; Memory management; Resource management;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    High Performance Computer Architecture (HPCA), 2014 IEEE 20th International Symposium on
  • Conference_Location
    Orlando, FL
  • Type

    conf

  • DOI
    10.1109/HPCA.2014.6835965
  • Filename
    6835965