0
我需要paralize功能numpy.linalg.matrix_power我用下面的代码来测试有多少快可并行版本Paralize numpy.linalg.matrix_power不提高性能
def aux_matrix_arg3(A):
aaa=np.linalg.matrix_power(np.random.randn(199,199),100)
return 1
N=10000
processes=4
chunksize=N/processes
poolWorkers=mp.Pool(processes=processes)
ti=t.time()
A=poolWorkers.map(aux_matrix_arg3,range(N),chunksize=chunksize)
print 't_iteration 3',t.time()-ti
我曾尝试在我的笔记本电脑中有1个和4个进程。我得到了非常相似的性能 4个过程:t_iteration 3点40.7985408306 1的过程:t_iteration 3 40.6538720131
任何线索,为什么我没有得到与paralle过程任何改良效果?
您应该检查1个进程与4个进程的CPU负载。也许'np.linalg.matrix_power'在内部已经是多进程或多线程的。 – MSeifert
你是对的!它在内部已经是多线程的。 – user2157396