私はいくつかの動的LCAを並列化しようとしています(10のようなものです...1000以上実行する必要があります...)そしてこれを得ました
Can't expand MemType 1: jcol 19852
Can't expand MemType 0: jcol 17930
multiprocessing.pool.RemoteTraceback:
"""
Traceback (most recent call last):
File "/home/giuseppec/miniconda3/envs/bw2/lib/python3.4/multiprocessing/pool.py", line 119, in worker
result = (True, func(*args, **kwds))
File "/home/giuseppec/miniconda3/envs/bw2/lib/python3.4/multiprocessing/pool.py", line 47, in starmapstar
return list(itertools.starmap(args[0], args[1]))
File "multiprocess_both.py", line 129, in dyn_lca
timeline=dynamic_lca.calculate()
File "/home/giuseppec/miniconda3/envs/bw2/lib/python3.4/site-packages/bw2temporalis/dynamic_lca.py", line 54, in calculate
**self.gt_kwargs
File "/home/giuseppec/miniconda3/envs/bw2/lib/python3.4/site-packages/bw2calc/graph_traversal.py", line 44, in calculate
lca, supply, score = self.build_lca(demand, method)
File "/home/giuseppec/miniconda3/envs/bw2/lib/python3.4/site-packages/bw2calc/graph_traversal.py", line 107, in build_lca
lca.decompose_technosphere()
File "/home/giuseppec/miniconda3/envs/bw2/lib/python3.4/site-packages/bw2calc/lca.py", line 216, in decompose_technosphere
self.solver = factorized(self.technosphere_matrix.tocsc())
File "/home/giuseppec/miniconda3/envs/bw2/lib/python3.4/site-packages/scipy/sparse/linalg/dsolve/linsolve.py", line 377, in factorized
return splu(A).solve
File "/home/giuseppec/miniconda3/envs/bw2/lib/python3.4/site-packages/scipy/sparse/linalg/dsolve/linsolve.py", line 257, in splu
ilu=False, options=_options)
MemoryError
"""
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "multiprocess_both.py", line 181, in <module>
dyn_multi=[x for x in pool_dyn_multi.get()]
File "/home/giuseppec/miniconda3/envs/bw2/lib/python3.4/multiprocessing/pool.py", line 608, in get
raise self._value
MemoryError
行列反転中にscipyがメモリ不足になっているようです(私は確かにこれを言うのに最も精通しているわけではありませんが、少し調べました)何かが変わるかどうかを確認するためにscikit-umfpackをインストールしようとしました....実行中ですしかし、それでも非常に遅く、あまり有望ではないようで、さらにこの警告を返すだけです:
Warning: (almost) singular matrix! (estimated cond. number: 3.33e+14)
実際にこれに対処する方法について何も考えていません...誰かが持っていますか?
PS: bw2 のバグではないように見えるので、ここに投稿しました。