欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

CUDA数组分配

发布时间:2025/3/15 编程问答 26 豆豆
生活随笔 收集整理的这篇文章主要介绍了 CUDA数组分配 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

CUDA数组分配

1437人阅读 评论(0) 收藏 举报 分类: CUDA(106)

http://www.cnblogs.com/traceorigin/archive/2013/04/12/3016540.html

cuda内存分配真是乱啊,这次总结一下数组的分配。

概述:数组分配可以通过cudaMallocArray()和cudaMalloc3DArray()

1、cudaMallocArray()

cudaError_t cudaMallocArray ( struct cudaArray ** array,const struct cudaChannelFormatDesc * desc,size_t width,size_t height = 0,unsigned int flags = 0 )

例:2DArray分配

1 cudaArray *d_volumeArray; 2 cudaChannelFormatDesc desc = cudaCreateChannelDesc(32, 0, 0, 0, cudaChannelFormatKindFloat); 3 cudaMallocArray(&d_volumeArray, &desc, 128, 128); 4 cudaMemcpyToArray(d_volumeArray, 0, 0, h_volume, sizeof(float)*128*128, cudaMemcpyDeviceToDevice);

2、cudaMalloc3DArray()

1 cudaError_t cudaMalloc3DArray ( 2 struct cudaArray ** array, 3 const struct cudaChannelFormatDesc * desc, 4 struct cudaExtent extent, 5 unsigned int flags = 0 6 )

例:

1 cudaChannelFormatDesc channelDesc = cudaCreateChannelDesc<uchar>(); 2 cudaArray *d_volumeArray; 3 cudaMalloc3DArray(&d_volumeArray, &channelDesc, volumSize);


总结

以上是生活随笔为你收集整理的CUDA数组分配的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。