进程以退出代码 -1073740940 和 Numba 结束
Process finished with exit code -1073740940 and Numba
当我使用 Numba 时,出现以下错误:
Process finished with exit code -1073740940 (0xC0000374)
代码如下:
from numba import njit,prange
@njit(parallel=True)
def r(x,y,z):
k=[]
for i in prange(x):
for j in prange(y):
for l in prange(z):
k.append(i + j+l)
return k
k = r(2,2,2)
有人可以帮我吗?
您不能将项目并行添加到给定列表(至少在没有 locks/synchronizations/atomics 的情况下不能)。使用 prange
不会神奇地使您的代码更快。您需要确保代码可以并行化。如果这不可能,则生成的代码格式错误并导致未定义的行为(例如像您所遇到的那样的崩溃)。
如果你想要一个快速的代码,使用 Numpy 数组,预分配 最终大小(或可能更大)的数组并使用直接赋值。
当我使用 Numba 时,出现以下错误:
Process finished with exit code -1073740940 (0xC0000374)
代码如下:
from numba import njit,prange
@njit(parallel=True)
def r(x,y,z):
k=[]
for i in prange(x):
for j in prange(y):
for l in prange(z):
k.append(i + j+l)
return k
k = r(2,2,2)
有人可以帮我吗?
您不能将项目并行添加到给定列表(至少在没有 locks/synchronizations/atomics 的情况下不能)。使用 prange
不会神奇地使您的代码更快。您需要确保代码可以并行化。如果这不可能,则生成的代码格式错误并导致未定义的行为(例如像您所遇到的那样的崩溃)。
如果你想要一个快速的代码,使用 Numpy 数组,预分配 最终大小(或可能更大)的数组并使用直接赋值。