我对统一虚拟内存有些困惑。
链接(http://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html#unified-virtual-address-space)后面的文档说,当...
应用程序作为64位进程运行时,使用一个地址空间来为主机和所有计算能力为2.0及更高版本的设备提供服务。
但是这个链接(http://docs.nvidia.com/cuda/cuda-c-programming-guide/index.html#um-requirements)说需要:
具有SM架构3.0或更高版本(Kepler类或更高版本)的GPU
此外,第一个链接说我可以使用cudaHostAlloc
。然后第二个链接使用cudaMallocManaged
。
这个“统一”的术语是否有两种不同的含义,还是文档有点不连贯?