openLCA 2.0 で EXIOBASE のプロセスから製品システムを作ろうとしています。最大メモリ使用量は 16000 MB まで上げてあります。
それでも作成の途中でエラーになり、完了しません。どう回避すればよいでしょうか。
1 件の回答
製品システムの作成を飛ばし、プロセスから直接計算(direct calculation)してください。 EXIOBASE は産業連関ベースで、要素がほとんど埋まった密な行列になります。製品システムを組む工程を挟まないほうが所要メモリが小さく、計算も速くなります。
メモリの目安も出ています。EXIOBASE で製品システムを組むには 40 GB 程度の RAM が要り、計算にはさらに要ります。製品システムを飛ばして直接計算すれば、同じ対象が 20 GB で、しかも速く終わります。
規模の感覚として、ある製品システムでは接続がおよそ3千万、入力の製品が5千を超えるプロセスもあります。エラー本文は
java.lang.OutOfMemoryError でした。製品システム作成でも直接計算でも落ちる(openLCA 2.1・EXIOBASE 3.8.2)という報告が別にあり、そちらは未回答です。
参考にしたスレッド
- problemas creating product system exiobaseask.openLCA2023-10
- exiobase 3.8.2 crash on OpenLCA 2.1ask.openLCA2024-05
- Error when trying to create a product systemask.openLCA2021-11
