我有:
cudaHostAlloc(..., cudaHostAllocMapped)或成功固定和映射的主机内存cudaHostRegister(..., cudaHostRegisterMapped);cudaHostGetDevicePointer(...).我cudaMemcpy(..., cudaMemcpyDeviceToDevice)在src和dest设备指针上启动,指向通过上述技术获得的两个不同的固定+映射内存区域.一切正常.
问题:我应该继续这样做还是只使用传统的CPU风格,memcpy()因为一切都在系统内存中?...或者它们是否相同(即当src和dest固定时,是否cudaMemcpy映射到直线memcpy)?
(我仍在使用该cudaMemcpy方法,因为之前所有内容都在设备全局内存中,但由于gmem大小限制,因此已切换到固定内存)