我正在使用特斯拉,而且我第一次使用CPU内存而不是GPU内存。因此,我认为我可以通过将所有整数缩短(我所有的值都低于255)来缩减主机内存的大小。是否有可能使用src和dest作为不同类型的cudaMemcpy?
但是,我希望我的设备内存使用整数,因为内存访问速度更快。那么有没有办法将我的主机内存(简而言之)复制到我的设备全局内存中(int)?我想这是行不通的:
short *buf_h = new short[100];
int *buf_d = NULL;
cudaMalloc((void **)&buf_d, 100*sizeof(int));
cudaMemcpy(buf_d, buf_h, 100*sizeof(short), cudaMemcpyHostToDevice);
任何想法?谢谢!
如果我正确理解提问者,他们问在memcpy期间memcpy是否可以促进short-> int,答案是否定的。快递,但。即它的运行速度与cudaMemcpy()一样快。 – ArchaeaSoftware 2012-01-11 10:47:17