2017-04-13 19 views
0

私が使用するコードの中には、RAMよりも大きな行列を作成するものがあります。私の最初の考えは、pytablesを使うように現在の行列を修正することによってpytablesに行くことでした。しかし、コーディングを行うのは苦痛になるでしょう(私が使用するコードはopensourceであり、変更を行うことは、すべての行列の使用や他の関連するコーディングの理由を追跡することによって本当の苦痛です)。しかし、私は少し研究をして、私はPythonが実際に仮想メモリを使用していると言われています。だから私は1TBと言う非常に巨大な仮想メモリを持っている場合、私のプログラムは "メモリ不足エラー"を取得する心配する必要はありません。私は途中でubuntuを使っています。私の心配は、pytablesの使用より遅い私の問題を解決するために非常に巨大な仮想メモリを使用しているということですか?私はpython2.7を使用していますPytablesと仮想メモリ

答えて

0

オペレーティングシステムは仮想メモリを実装しています。仮想メモリシステム上のすべてに仮想メモリが使用されます。

仮想メモリが利用可能であるが、限界があるよりも、あなたのプログラムは、より多くの物理メモリにアクセスできるようになります:

  1. プロセスの仮想アドレス範囲
  2. システムは
  3. プロセス・クォータ
  4. ページファイル・スペースをパラメータ

十分大きな行列を使用すると、これらの値を超えることができます。

+0

user3344003あなたの答えに感謝してくれました。しかし、あなたの答えはパフォーマンスの問題に関して、仮想メモリとpytablesの比較を扱っていません。 – eddys

+0

オペレーティングシステムで仮想メモリが使用されている場合、仮想メモリが取得されます。あなたがオンとオフを切り替えるものではありません。 – user3344003

+0

user3344003、もう一度やり直しましょう。パフォーマンスの理由からどちらが望ましいか。 (1)100GBのRAMで仮想メモリを1TBに増やす、または(2)100GBのRAMを搭載した100GBの仮想メモリを使用していますが、現在pytablesを使用していますか? 1TBの仮想メモリがあれば、pytablesを使う必要はありません。 – eddys

関連する問題