Abstract-Managing memory between the CPU and GPU is a major challenge in GPU computing. A programming model, Unified Memory Access (UMA), has been recently introduced by Nvidia to simplify the complexities of memory management while claiming good overall performance. In this paper, we investigate this programming model and evaluate its performance and programming model simplifications based on our experimental results. We find that beyond on-demand data transfers to the CPU, the GPU is also able to request subsets of data it requires on demand. This feature allows UMA to outperform full data transfer methods for certain parallel applications and small data sizes. We also find, however, that for the majority of applications and memory access patterns, the performance overheads associated with UMA are significant, while the simplifications to the programming model restrict flexibility for adding future optimizations.
In paper REF , the authors investigated Unified Memory access performance in CUDA.
An investigation of Unified Memory Access performance in CUDA
2014 IEEE High Performance Extreme Computing Conference (HPEC)
2014 IEEE High Performance Extreme Computing Conference (HPEC)
Computer Science Medicine