OpenCL 共享虚拟存储器

通过映射,可以将设备全局存储器区域映射到主机可以访问的地址空间。而除了这种方式,在OpenCL 2.0中,OpenCL通过共享虚拟存储器(Shared Virtual Memory,SVM)机制扩展了全局存储器区域到主机内存区域的方式。在OpenCL 2.0中定义了三种SVM类型:

  • 粗粒度SVM:共享发生在OpenCL缓冲存储器对象区域的粒度;

  • 细粒度SVM:共享发生在OpenCL缓冲存储器对象里独立地以字节加载/存储的粒度;

  • 细粒度系统SVM:共享发生在主机内存内任何地方独立地以字节加载/存储的粒度。

粗粒度内存SVM是OpenCL的核心规范,而对于后两种细粒度实现是可选。

从概念上来说,可能大家不太明白三种SVM到底实现什么功能,这没有关系。只要记住有三种SVM类型,在后面的教程中会通过具体的例子来讲解SVM的作用和用法。

赞(1)
未经允许不得转载:极客笔记 » OpenCL 共享虚拟存储器
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址