想知道cudaMallocPitch 是按多少字节对齐的:“从256字节对齐的地址(addr=0, 256, 512, ...) 开始的连续访问是最有效率的”。
看到http://hpcbbs.it168.com/thread-5161-1-1.html上做了一个实验:
“譬如, 我原来要开的float数组是320*300的, 也就是每行320, 共300行
我看了看, 用cudaMallocPitch((void**)&a, &pitch, sizeof(float)*320, 300) 开出来的数组的pitch是1280(bytes), 对应长度为pitch/sizeof(float)=320个float, 也就是我原来要开的维度”。
恰好我要处理一个320*240的视频,我做的测试如下:
float *a;
size_t pitch_;
cu

本文探讨了CUDA中使用cudaMallocPitch进行内存分配时的对齐方式。实验表明,对齐大小与数据类型相关,例如,float类型的数组对齐于512字节,而double类型对齐于1024字节,这有助于提高GPU的访问效率。
最低0.47元/天 解锁文章
864

被折叠的 条评论
为什么被折叠?



