【发布时间】:2012-03-05 10:41:54
【问题描述】:
我在主机上有一个向量,我想将它减半并发送给设备。做一个基准测试表明CL_MEM_ALLOC_HOST_PTR 比CL_MEM_USE_HOST_PTR 快,并且比CL_MEM_COPY_HOST_PTR 快得多。此外,设备上的内存分析不会显示设备上创建的缓冲区大小有任何差异。这与Khronos- clCreateBuffer 上提到的标志的文档不同。有谁知道怎么回事?
【问题讨论】:
-
您好,您是使用 gpu、cpu 还是 apu 设备运行内核?还有,哪个供应商?您的系统是否有多个处理器(NUMA 架构?)
-
COPY_HOST_PTR 执行隐式复制,但 ALLOC_HOST_PTR 需要显式复制。当您为 ALLOC_HOST_PTR 运行基准测试时,您确定要包括将缓冲区从主机复制到设备的额外步骤吗?如果不是,这或许可以解释为什么它的速度如此之快。
-
我使用 NVIDIA gpu 作为设备。
标签: opencl