Numbapro cuda python在gpu的线程寄存器中定义数组

Numbapro cuda python在gpu的线程寄存器中定义数组,python,cuda,pycuda,numba,numba-pro,Python,Cuda,Pycuda,Numba,Numba Pro,我知道如何使用np.array或np.zeros或np.empty(shape,dtype)在主机内创建全局设备函数,然后使用cuda.to\u设备进行复制 此外,还可以将共享数组声明为cuda.shared.array(shape,dtype) 但是如何在gpu函数内的特定线程的寄存器中创建一个大小恒定的数组 我尝试了cuda.device\u array或np.array,但没有任何效果 我只想在一个线程内执行此操作- x = array(CONSTANT, int32) # should

我知道如何使用
np.array
np.zeros
np.empty(shape,dtype)
在主机内创建全局设备函数,然后使用
cuda.to\u设备
进行复制

此外,还可以将共享数组声明为
cuda.shared.array(shape,dtype)

但是如何在gpu函数内的特定线程的寄存器中创建一个大小恒定的数组

我尝试了
cuda.device\u array
np.array
,但没有任何效果

我只想在一个线程内执行此操作-

x = array(CONSTANT, int32) # should make x for each thread

Numbapro支持
numba.cuda.local.array(形状、类型)
定义线程本地数组

与CUDAC一样,是在本地内存中定义than数组还是在寄存器中定义than数组是编译器根据数组的使用模式做出的决定。如果本地数组的索引模式是静态定义的,并且有足够的寄存器空间,编译器将使用寄存器存储数组。否则,它将存储在本地内存中。有关更多信息,请参阅