c – 在nvidia cuda内核中创建数组

前端之家收集整理的这篇文章主要介绍了c – 在nvidia cuda内核中创建数组前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
嗨,我只想知道是否可以在nvidia cuda内核中执行以下操作
__global__ void compute(long *c1,long size,...)
 {
  ...
  long d[1000];
  ...
 }

或以下

__global__ void compute(long *c1,...)
 {
  ...
  long d[size];
  ...
 }

解决方法

你可以做第一个例子,我没有尝试过第二个例子.

但是,如果您可以帮助它,您可能需要重新设计您的程序不要这样做.您不想在内核中分配4000字节的内存.这将导致大量使用CUDA本地内存,因为您将无法将所有内容都装入寄存器. CUDA本地内存缓慢(400个周期的内存延迟).

猜你在找的C&C++相关文章