• DocumentCode
    3327050
  • Title

    Breaking SIMD shackles with an exposed flexible microarchitecture and the access execute PDG

  • Author

    Feng Ji ; Heshan Lin ; Xiaosong Ma

  • Author_Institution
    Dept. of Comput. Sci., North Carolina State Univ., Raleigh, NC, USA
  • fYear
    2013
  • fDate
    7-11 Sept. 2013
  • Firstpage
    341
  • Lastpage
    352
  • Abstract
    While Graphics Processing Units (GPU) have gained much success in general purpose computing in recent years, their programming is still difficult, due to, particularly, explicitly managed GPU memory and manual CPU-GPU data transfer. Despite recent calls for managing GPU resources as first-class citizens in the operating system, a mature GPU memory management mechanism is still missing, which leads to reinventing the wheels in various GPU system software. Meanwhile, due to ever enlarging problem sizes, we urgently need a system-level mechanism for unified CPU-GPU memory management. In this work, we present the design of Region-based Software Virtual Memory (RSVM), a software virtual memory running on both CPU and GPU in a distributed and cooperative way. In addition to automatic GPU memory management and GPU-CPU data transfer, RSVM offers two novel features: 1) GPU kernel-issued on-demand data fetching from the host into the GPU memory, and 2) intra-kernel transparent GPU memory swapping into the main memory. Our study reveals important insights on the challenges and opportunities of building unified virtual memory systems for heterogeneous computing. Experimental results on real GPU benchmarks demonstrate that, though it incurs a small overhead, RSVM can transparently scale GPU kernels to large problem sizes exceeding the device memory size limit; developers write the same code for different problem sizes, but still can optimize on data layout definition accordingly. Our evaluation also identifies missing GPU architecture features for better system software efficiency.
  • Keywords
    benchmark testing; graphics processing units; memory architecture; multiprocessing systems; operating systems (computers); resource allocation; virtual storage; GPU kernel; GPU memory management mechanism; GPU resource management; GPU system software; RSVM; automatic GPU memory management; data layout; device memory size limit; general purpose computing; graphics processing units; heterogeneous computing; intrakernel transparent GPU memory swapping; main memory; manual CPU-GPU data transfer; missing GPU architecture; on-demand data fetching; operating system; real GPU benchmarks; region-based software virtual memory; system software efficiency; unified CPU-GPU memory management; Data transfer; Graphics processing units; Instruction sets; Kernel; Memory management; Synchronization; AVX; SIMD; SSE; accelerator; aepdg; compiler; dyser;
  • fLanguage
    English
  • Publisher
    ieee
  • Conference_Titel
    Parallel Architectures and Compilation Techniques (PACT), 2013 22nd International Conference on
  • Conference_Location
    Edinburgh
  • ISSN
    1089-795X
  • Print_ISBN
    978-1-4799-1018-2
  • Type

    conf

  • DOI
    10.1109/PACT.2013.6618823
  • Filename
    6618823