問題タブ [numpy-memmap]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - numpy memmap ndarray に基づく Pandas DataFrame は、計算中にデータをコピーするように見える
memmap (共有メモリ) からの ndarray によってサポートされる比較的大きな Pandas DataFrame が必要です。動作するコード (以下) がありますが、データフレームで計算を実行すると、システム全体の使用率 (トップで測定) が、プロセスがデータをコピーしているかのように上昇します。計算が完了すると、システムのメモリ使用量はベースラインに戻ります。memmap を直接使用して同じ計算を行うと、システムのメモリ使用量は上がりません。この (明らかに) 一時的なメモリ使用量の急増を回避する方法はありますか?
(これらのケースの両方で、top によって報告された個々の python プロセスによって使用されるメモリの割合が上昇することに注意してください、FWIW.)
Pandas 0.20.3、numpy 1.13.1、python 2.7.11 の使用
コード - 最初のスクリプトexample_setup.py
、共有メモリの memmap をセットアップします。
2 番目のスクリプトexample_use.py
では、上記の memmap を直接使用し、Pandas DataFrame のバッキングとして使用します。