Linux 在OpenCL中使用内存映射文件

Linux 在OpenCL中使用内存映射文件,linux,opencl,gpu,mmap,virtual-memory,Linux,Opencl,Gpu,Mmap,Virtual Memory,我使用内存映射I/O(linux上的mmapcall)访问磁盘上的文件 是否可以使用CL\u MEM\u USE\u HOST\u PTR将此虚拟内存缓冲区传递给OpenCL(仅用于读取)。这会导致性能提高吗 我希望避免将整个文件复制到主机内存中,而是让OpenCL内核控制操作系统加载/缓冲文件的哪些部分。我认为这应该是可行的-您不应该以错误、崩溃或不正确的结果告终;它是否带来性能提升可能取决于硬件、驱动程序/CL实现和访问模式。如果它在很多情况下没有造成很大的不同,我也不会感到惊讶。我可以想象

我使用内存映射I/O(linux上的
mmap
call)访问磁盘上的文件

是否可以使用
CL\u MEM\u USE\u HOST\u PTR
将此虚拟内存缓冲区传递给OpenCL(仅用于读取)。这会导致性能提高吗


我希望避免将整个文件复制到主机内存中,而是让OpenCL内核控制操作系统加载/缓冲文件的哪些部分。

我认为这应该是可行的-您不应该以错误、崩溃或不正确的结果告终;它是否带来性能提升可能取决于硬件、驱动程序/CL实现和访问模式。如果它在很多情况下没有造成很大的不同,我也不会感到惊讶。我可以想象GPU驱动程序预先故障并连接所有页面,以便将其映射到GPU的地址空间