あるポイントの後で50GBを超えるサイズの大量のデータ(約4000枚の画像の各レイヤーのフィーチャマップ)を処理する必要があります。処理にはいくつかの計算が必要で、その後に約2MBのファイルがHDDに書き込まれます。限られたRAMで膨大な量のデータを扱う方法
フリー・ラムは約40GBなので、私のプロセスはある時点後にクラッシュします。誰もがこの50GBのデータを分割または処理して、利用可能なRAM内で計算ができるようにするためのより良いアプローチを提案することができます。例えば、いくつかのメモリ圧縮のアプローチ
私はちょうどこの問題への可能なアプローチのヒントを探しています。
ありがとうございます。
すべてのデータを一度にメモリに保存しないでください。それを小さなものに分解してください。 –
はい、ただし、データを同期させる必要があります。そのようなちょっとしたセーブポイントを持つ最良の方法は何か分かりません。 – blackbug
あなたの問題の説明は、あまりにも一般的で、詳細な回答はありません。一度にRAMにデータセット全体をロードしていますか、それともバッチに分割していますか?あなたが後者をしていないなら、私はそれが行く方法だと思う。次にバッチを連続的に分析することができます。つまり、一度バッチが終了すると、すべてが処理されるまで次のバージョンに移ります。このように、作業しているセットは、使用可能なメモリより大きくなるべきではありません。 –