Survey on GPGPU and CUDA Unified Memory Research Status
In the context of big data,the rapid advancement of fields such as scientific computing and artificial intelligence,there is an increasing demand for high computational power across various domains.The unique hardware architecture of the Graphics Processing Unit(GPU)makes it suitable for parallel computing.In recent years,the concurrent development of GPUs and fields such as artificial intelligence and scientific computing has enhanced GPU capabilities,leading to the emergence of mature General-Purpose Graphics Processing Units(GPGPUs).Currently,GPGPUs are one of the most important co-processors for Central Processing Units(CPUs).However,the fixed hardware configuration of the GPU after delivery and its limited memory capacity can significantly hinder its performance,particularly when dealing with large datasets.To address this issue,Compute Unified Device Architecture(CUDA)6.0 introduces unified memory,allowing GPGPU and CPU to share a virtual memory space,thereby simplifying heterogeneous programming and expanding the GPGPU-accessible memory space.Unified memory offers a solution for processing large datasets on GPGPUs and alleviates the constraints of limited GPGPU memory capacity.However,the use of unified memory introduces performance issues.Effective data management within unified memory is the key to enhancing performance.This article provides an overview of the development and application of CUDA unified memory.It covers topics such as the features and evolution of unified memory,its advantages and limitations,its applications in artificial intelligence and big data processing systems,and its prospects.This article provides a valuable reference for future work on applying and optimizing CUDA unified memory.
General-Purpose Graphics Processing Unit(GPGPU)unified memorymemory oversubscriptiondata managementheterogeneous system