我有一个 Nvidia GPU,下载了 CUDA,并且正在尝试使用它。
说我有这个代码:
#@cuda.jit (Attempted fix #1)
#@cuda.jit(device = True) (Attempted fix #2)
#@cuda.jit(int32(int32,int32)) (Attempted fix #3)
@njit
def product(rho, theta):
x = rho * (theta)
return(x)
a = product(1,2)
print(a)
如何使它与 cuda.jit 装饰器而不是 njit 一起工作?
我尝试过的事情:
当我将装饰器从@njit 切换到@cuda.jit 时,我得到: TypingError: No conversion from int64 to none for '$0.5', defined at None。
当我切换装饰器@cuda.jit(device = True) 时,我得到: TypeError: 'DeviceFunctionTemplate' object is not callable。
当我为输入和输出指定类型并使用装饰器@cuda.jit(int32(int32,int32)) 时,我得到:TypeError: CUDA kernel must have void return type。