Paper
:
Compiler Assisted Hybrid Implicit and Explicit GPU Memory Management Under Unified Address Space
SessionGPU
Event Type
Paper
Registration Categories
TP
Tags
Algorithms
Compiler Analysis and Optimization
Data Management
GPUs
Memory
Performance
TimeWednesday, 20 November 20193:30pm - 4pm
Location405-406-407
DescriptionTo improve programmability and productivity, recent GPUs adopt a virtual memory address space shared with CPUs (e.g., NVIDIA’s unified memory). Unified memory migrates the data management burden from programmers to system software and hardware, and enables GPUs to address datasets that exceed their memory capacity. Our experiments show that while the implicit data transfer of unified memory may bring better data movement efficiency, page fault overhead and data thrashing can erase its benefits. In this paper, we propose several user-transparent unified memory management schemes to achieve adaptive implicit and explicit data transfer and prevent data thrashing. Unlike previous approaches which mostly rely on the runtime and thus suffer from large overhead, we demonstrate the benefits of exploiting key information from compiler analyses. We implement the proposed schemes to improve OpenMP GPU offloading performance. Our evaluation shows that our schemes improve the GPU performance and memory efficiency significantly.
Back To Top Button