问题描述
我正在尝试从@jit函数调用@vectorize函数。 ¿有人可以解释为什么不起作用吗?
我发布了代码和错误:
N = 1000
# Ufunc using numba
@vectorize('float64(float64,float64)',nopython = True,target = "parallel")
def function(x,y):
return x+y
# Jitted function calling the prevIoUs function
@jit('float64[:](float64[:],float64[:])',nopython = True)
def test_function(x,y):
return function(x,y)
x = np.zeros(N)
y = np.ones(N)
vector = test_function(x,y)
我收到的错误消息是:
未键入的全局名称“函数”:无法确定
解决方法
这是当前Numba版本的已知问题,请参见:
https://github.com/numba/numba/issues/5720
您可以使用target="cpu
解决此问题。