下面的代码给出以下错误: TypeError:无法腌制DUFunc对象
我直接使用多处理程序遇到了类似的问题。
有什么想法如何并行化使用numba vectorize和/或guvectorize的代码?
from pathos.multiprocessing import ProcessingPool
from numba import vectorize, guvectorize, float64, int64
@vectorize([float64(float64)])
def square(x):
return x ** 2
x = range(4)
p = ProcessingPool(processes=4)
res = [p.apipe(square, x[i]) for i in range(4)]
[v.get() for v in res]
我还尝试了在此较早的相关主题中提到的建议:Python multiprocessing PicklingError: Can't pickle <type 'function'>