0

バックグラウンド:

健全性と簡単な分析のために、オブジェクト指向の構成構造を使用して大量のデータを分析しています。多くの場合、オブジェクト指向の最高レベルは保存時に約 2 ギガのオブジェクトです。データをメモリにロードすることは常に問題になるわけではなく、コンテンツに基づいてサブオブジェクトを作成し、次に上位のオブジェクトを作成することは、多くの mat ファイルを直接ロードするよりも Java メモリ効率がはるかに高くなります。

問題:

2 GB を超えるこれらのオブジェクトを保存すると、多くの場合失敗します。合計サイズが 2 ~ 3 ギガを下回るまで、いくつかのサブ オブジェクトを削除するだけで回避できたのは、ややよく知られた問題です。これは、コンピューターの性能に関係なく発生し、16 GB の RAM 8 コアなどでも、オブジェクトを正しく保存できません。保存のバックバージョニングも役に立たない

質問:

これは、他の人が MATLAB で何らかの方法で解決した問題ですか? まだ多くの高レベルの分析があり、この問題が発生しない代替案はありますか?

質問歓迎、ありがとう。

4

1 に答える 1

3

これが役立つかどうかはわかりませんが、ここでは、最新バージョンのマットファイルを使用していますか?たとえば、saveを確認します。ページからの引用:

'-v7.3' 7.3(R2006b)以降のバージョン7.0の機能に加えて、64ビットシステムで2GB以上のデータ項目のサポート

'-v7' 7.0(R14)以降のバージョン6の機能に加えて、データ圧縮とUnicode文字エンコード。Unicodeエンコーディングにより、異なるデフォルトの文字エンコーディングスキームを使用するシステム間でファイル共有が可能になります。

また、万が一、オブジェクトがグラフィックハンドルオブジェクトによって、またはグラフィックハンドルオブジェクトを含む可能性はありますか?その場合、hgsaveを使用するのが賢明です

于 2012-05-05T18:07:41.113 に答える