当为了提高CUDA程序的主机内存和设备内存传输消耗时,可以尝试一下两种方案
一:使用分页锁定内存,分页锁定内存和显存之间的拷贝速度大约是6GB/s,普通的分页内存和GPU间的速度大约是3GB/s,(另外:GPU内存间速度是30G,CPU间内存速度是10GB/s),但是这种方法会带来额外的cpu内存间的拷贝时间
二:使用内存映射(Zero Copy)让GPU直接使用CPU的内存,减少主机和设备间内存传输的时间,但是这种方法对于2.2以后的cuda版本未必管用
三:通过函数cudaHostRegister()把普通内存改为分页锁定内存,和一的方法类似,但不会带来额外的cpu内存拷贝时间,实验证明该方法有效果。
========================================================================================================