問題タブ [memory-optimization]
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.
arrays - ローカル動的配列の長さをゼロに設定すると、メモリ使用量が削減されますか?
ローカルの動的配列の長さをゼロに設定すると (不要になった場合)、メモリ使用量にメリットがありますか?
例えば:
python - PyTorch と比較して Numpy 有限差分計算が法外に遅い
私の目標は、有限差分を介して反応拡散微分方程式をシミュレートすることですが、2d 波動方程式から始めました。これにはかなりの時間がかかるため、基本的な実装をできるだけ高速にしたいと考えており、numpy/cupy/numba/pytorch を使ってどれが最速かを調べています。本当に奇妙に感じるのは、PyTorch を使用した私の実装は、反復の実行にかかる時間はほとんど一定ですが、numpy はますます遅くなることです。torch には何らかのインテリジェントなガベージ コレクションがバックグラウンドで実行されており、numpy は未使用の配列を削除しないと想定しています (torch は一定ですが、メモリ使用量の増加に見られます)。ただし、numpy コードを手動で最適化してインプレースで実行し、未使用の配列を削除した後でも、まだそうではありません。
以下は、コメント内のトーチコードとともに、numpy コードです。
これは、操作がインプレースになるように変更された部分です。
基本的に私は尋ねています: numpy コードが PyTorch 実装と同じくらい速くなるために何をする必要がありますか?