Windows Server 2012 で実行されている .Net (VS 2012) 64 ビット アプリケーションがあり、大量のデータをメモリにロードして、次の 24 ~ 48 時間使用します。私たちの設計では、データ ソースに接続してデータを事前にロードすることを好みます。プロセスの正味メモリ フットプリントは最大 7 ~ 8 GB になります。これは、並列クライアントを表す 4 つの独立したスレッドのデータをレプリケートするためです。つまり、クライアントあたり 2 GB のデータのようになります。
私たちが使用しているハードウェアは、128 GB の RAM、4 つの CPU (24 コア) プロセッサを搭載しています。
実行速度、プロセッサ使用率など、メモリフットプリントがプロセスの正味のパフォーマンスに影響を与えるのではないかと思っていました
十分な RAM があり、正味の使用率が 60% を超えない場合でも、プロセス ページが HD にスワップされるため、48 時間連続して使用すると速度が低下します。メモリ フットプリントが原因で発生するパフォーマンスの問題に対処するのに役立つサーバー設定または .Net c# コード API はありますか。プロセスが大量のメモリを必要とすることをシステムに明示的に伝えることができます。
また、各並列クライアントが複数の Threadpool スレッドを生成することも付け加えておきます。サブタスクを完了するには、現在、プロセスの平均 CPU 使用率は 50 ~ 60% です。これは、パフォーマンスに影響を与えている可能性があるディスク IO のボトルネックを把握するための措置を講じる必要があることを意味しますか?