何十万ものレコードを処理する必要があるアプリケーションがあります。現在、一度に処理できるのは 500 個までです。各バッチは、処理/分析に最大 5 分かかる場合があります (合計約 10 時間の処理)。500 レコードという制限の理由は、メモリの消費です。私たちのプログラムが大量のメモリを消費する主な理由の 1 つは、リストや辞書のサイズを設定していないことだと思います (たとえば、new List(100000) の代わりに new List())。コレクションのサイズを設定するための変更を行って、.NET が余分な容量を持つ新しいリストの作成とコピーを停止するようにしました。
これが私の質問です。プログラムのバージョンがよりメモリ効率的であることを証明するにはどうすればよいですか? 確認する必要があるパフォーマンス カウンターはありますか? ツール?モニタリング?